Можно ли в геттерах создавать новые сущности? Добрый день
Везде много раз читал, что каждый метод должен делать одно действие
Например, геттер - только чтобы достать значение поля
Но вот столкнулся с такой задачей
у меня есть сервис, который получает текущее состояние объекта, напримерpublic State getState(Long chatId)
я бы хотел, чтобы в геттере, если состояние не было определено для этого сhatId, то оно создавалось
Правильный ли это подход? За такое отрывают руки сеньоры?

29 Июн 2020 в 19:47
180 +1
0
Ответы
1

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

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

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

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

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