Приветствую, коллеги!
Подскажите, пожалуйста, по такому моменту.
Представим, что у нас есть класс пользователя с полями имя, фамилия итд. Для каждого поля есть свой собственный геттер.
Считается ли дурным тоном внутри класса обращаться к полям напрямую, а не через геттеры?
Например, если я пишу метод getFullName(), могу ли я прописать в нем
return $this->lastName . ' ' . $this->firstName;
или же следует делать
return $this->getLastName() . ' ' . $this->getFirstName();
Понимаю, что в данном примере разница не критична, но хочется научиться писать по "бест практисам".
Ну если не холиварить на тему геттеров, то внутри вашего getFullName() лучше использовать геттеры, раз уж они есть. Чтобы все ваши геттеры отдавали согласованные ответы. Пример: в getFirstName() и getLastName() может использоваться trim, и если в getFullName() вы дернете свойства напрямую, то trim не применится, и fullname перестанет быть консистентным с именем и фамилией.