Хранение значения внутри метода. Хорошо или плохо? Всем привет!
Вдруг задался вот каким вопросом: допустим у нас есть базовый класс следующего вида:class A
{
public function isDisplayable()
{
return true;
}
}
У которого есть, скажем, метод, характеризующий свойство объекта быть отображенным.
Также данный класс имеет несколько классов наследников:class B extends A
{
}
class C extends A
{
public function isDisplayable()
{
return false;
}
}
Дак вот собственно в чем вопрос - как Вы считаете, насколько уместно использовать подобные методы, состоящие только из оператора return с возвращением какого-то значения? Получается что объект что-то сам знает про себя и поведение может изменяться от класса к классу. Или же все-таки правильнее сделать внешний класс, который принимая объект типа A и сообщит всю необходимую информацию о нем.
Понимаю, что вопрос сильно контекстнозависимый, но все же хотелось бы узнать кто что думает.

21 Авг 2019 в 07:06
162 +1
0
Ответы
1

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

В вашем примере, метод isDisplayable() возвращает значение в зависимости от типа объекта, что является общепринятой практикой в ООП. Это позволяет объекту самому контролировать свое поведение в соответствии с его состоянием, что может быть удобно и структурированно.

Однако, если в будущем вам понадобится более сложная логика для определения отображения объекта, может быть разумнее вынести эту логику в отдельный класс или сервис. Такой подход делает ваш код более модульным и упрощает его тестирование и поддержку.

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

20 Апр в 13:07
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 84 577 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир