Что такое SWIFT?
SOLID: Понимание Принципа Единственной Ответственности (SRP)
Если вы когда-нибудь сталкивались с разработкой программного обеспечения, возможно, вы слышали термин "SOLID". Это набор из пяти принципов, которые помогают разработчикам создавать более гибкие, масштабируемые и поддерживаемые системы. Сегодня мы погрузимся в первый из этих принципов — Принцип Единственной Ответственности (Single Responsibility Principle, SRP). Определение SRP: У класса должна быть только одна причина для изменения. Это означает, что каждый класс или модуль в вашей программе должен отвечать за одну и только одну часть функциональности...
1. Что такое SOLID? 2. Для чего используется JavaDoc? 3. Как писать JavaDoc? 4. Что такое Java code convention? 5. Расскажите про принципы составления Java класса. 6. Что такое SRP? Single Responsibility Principle. Существует лишь одна причина, приводящая к изменению класса. Один класс должен решать только какую-то одну задачу. Он может иметь несколько методов, но они должны использоваться лишь для решения общей задачи. Все методы и свойства должны служить одной цели. Если класс имеет несколько назначений, его нужно разделить на отдельные классы. Формализм 1. Определение SRP 1. Разделяйте элементы так, чтобы каждый из них был ответственен за что-то одно. 2. Ответственность расшифровывается как "повод для изменения". То есть каждый элемент имеет только один повод для изменения, в терминах бизнес логики. 3. Потенциальные изменения бизнес логики. должны быть локализованы. Изменяемые вместе элементы должны быть рядом. Формализм 2. Необходимые критерии самопроверки. Мне не встречались достаточные критерии выполнения SRP. Но есть необходимые условия: 1) Задайте себе вопрос — что делает этот класс/метод/модуль/сервис. вы должны ответить на него простым определением. ( благодарю Brightori ) Впрочем иногда подобрать простое определение очень сложно 2) Фикс некоторого бага или добавление новой фичи затрагивает минимальное количество файлов/классов. В идеале — один. Так как ответственность (за фичу или баг) инк docs.oracle.com/...tml javadevblog.co