Здесь показаны различия между двумя версиями данной страницы.
| Следующая версия | Предыдущая версия | ||
|
php:principles:solid [2023/07/18 23:19] werwolf создано |
php:principles:solid [2023/07/18 23:23] (текущий) werwolf |
||
|---|---|---|---|
| Строка 5: | Строка 5: | ||
| ===== Принцип единственной ответственности (Single Responsibility Principle) ===== | ===== Принцип единственной ответственности (Single Responsibility Principle) ===== | ||
| - | > Существует лишь одна причина, приводящая к изменению класса. | + | >Существует лишь одна причина, приводящая к изменению класса. |
| Один класс должен решать только какую-то одну задачу. Он может иметь несколько методов, но они должны использоваться лишь для решения общей задачи. Все методы и свойства должны служить одной цели. Если класс имеет несколько назначений, его нужно разделить на отдельные классы.\\ \\ Рассмотрим пример:\\ \\ | Один класс должен решать только какую-то одну задачу. Он может иметь несколько методов, но они должны использоваться лишь для решения общей задачи. Все методы и свойства должны служить одной цели. Если класс имеет несколько назначений, его нужно разделить на отдельные классы.\\ \\ Рассмотрим пример:\\ \\ | ||
| Строка 96: | Строка 96: | ||
| ===== Принцип открытости/закрытости (Open-closed Principle) ===== | ===== Принцип открытости/закрытости (Open-closed Principle) ===== | ||
| - | \\ > Программные сущности должны быть открыты для расширения, но закрыты для модификации. | + | > Программные сущности должны быть открыты для расширения, но закрыты для модификации. |
| Программные сущности (классы, модули, функции и прочее) должны быть расширяемыми без изменения своего содержимого. Если строго соблюдать этот принцип, то можно регулировать поведение кода без изменения самого исходника.\\ \\ Рассмотрим пример:\\ \\ | Программные сущности (классы, модули, функции и прочее) должны быть расширяемыми без изменения своего содержимого. Если строго соблюдать этот принцип, то можно регулировать поведение кода без изменения самого исходника.\\ \\ Рассмотрим пример:\\ \\ | ||