"наверное правило как раз чтобы сделать static где возможно"
ага. хотелось бы понять основания для этого
пока единственная выгода - экономим на создании инстанса - можно не создавать. а если их будет создано несколько - то статик методы шарятся между ними и это в теории экономит память
если кто знает еще плюсы - поделитесь плиз)
я думаю что правило основывается на логике - если у тебя есть объект и ты к нему привязываешь поведение, это поведение должно относится к объекту, т.е. результат вызова должен зависеть от стейта, а не только от переданных параметров. потому что если зависимость есть только от явно переданных параметров - не нужно эту функцию байндить к объекту класса