Объекты. Стильное ООП
Қосымшада ыңғайлырақҚосымшаны жүктеуге арналған QRRuStore · Samsung Galaxy Store
Huawei AppGallery · Xiaomi GetApps

автордың кітабынан сөз тіркестері  Объекты. Стильное ООП

Alex F.
Alex F.дәйексөз келтірді2 жыл бұрын
Признак хорошего тона — не делать ничего в конструкторе кроме того, что необходимо. А все, что необходимо, — это проверять предоставленные аргументы, а затем присваивать их в качестве значения для свойств сервиса.
2 Ұнайды
Комментарий жазу
данил савин
данил савиндәйексөз келтірді7 ай бұрын
В конце концов, хуже газетной статьи, написанной в стиле признания в любви, может быть только признание в любви, написанное в стиле газетной статьи.
1 Ұнайды
Комментарий жазу
Денис Самойлов
Денис Самойловдәйексөз келтірді2 күн бұрын
Никогда не передавайте потенциально изменяемый объект клиенту, которому не разрешено его менять. Даже если клиент не изменит его прямо сейчас, однажды он все же может это сделать, и тогда будет трудно выяснить, что произошло.
Комментарий жазу
Денис Самойлов
Денис Самойловдәйексөз келтірді2 күн бұрын
Методы извлечения информации называются методами-запросами, а методы, выполняющие задачи, — командными.
Комментарий жазу
Денис Самойлов
Денис Самойловдәйексөз келтірді2 күн бұрын
Задавайте абстракцию для команд, которые выходят за границы приложения (команд, которые обращаются к удаленному сервису, базе данных и т.п.)
Комментарий жазу
Денис Самойлов
Денис Самойловдәйексөз келтірді2 күн бұрын
Сервис должен быть неизменяемым снаружи и изнутри. Как и с сервисами для извлечения данных, необходимо обеспечить возможность многократного использования сервисов для выполнения задач. Если что-то пойдет не так при выполнении задачи, выдавайте исключение (как только о проблеме станет известно).
Комментарий жазу
Денис Самойлов
Денис Самойловдәйексөз келтірді2 күн бұрын
Командные методы должны использоваться для выполнения задач. Этим методам необходимо присваивать названия в форме императива («сделай это», «сделай то»), и область их воздействия должна быть ограничена. Выделяйте основную задачу и второстепенные. Передавайте события, чтобы другие сервисы могли выполнять дополнительные задачи. Пока эти задачи выполняются, командный метод может совершать вызовы методов-запросов, чтобы получать любую необходимую информацию.
Комментарий жазу
Денис Самойлов
Денис Самойловдәйексөз келтірді2 күн бұрын
Если в командном методе имеется код, который взаимодействует с частями приложения, находящимися за границами самого приложения (например, используются удаленный сервис, файловая система, системное устройство и т.п.), нужно создать абстракцию.
Комментарий жазу
Денис Самойлов
Денис Самойловдәйексөз келтірді2 күн бұрын
В цепочке командного метода могут быть и запросы для получения дополнительной информации
Комментарий жазу
Денис Самойлов
Денис Самойловдәйексөз келтірді2 күн бұрын
у метода-запроса не должно быть побочных эффектов.
Комментарий жазу