Принципы SOLID
SOLID это аббревиатура пяти основных принципов дизайна классов в объектно-ориентированном проектировании — Single responsibility, Open-closed, Liskov substitution, Interface segregation и Dependency inversion.
SOLID это аббревиатура пяти основных принципов дизайна классов в объектно-ориентированном проектировании — Single responsibility, Open-closed, Liskov substitution, Interface segregation и Dependency inversion.
DRY — расшифровывается как Don’t Repeat Youself — не повторяйся, также известен как DIE — Duplication Is Evil — дублирование это зло. Этот принцип заключается в том, что нужно избегать повторений одного и того же кода. Лучше использовать универсальные свойства и функции.
KISS — Keep It Simple, Stupid — не усложняй! Смысл этого принципа программирования заключается в том, что стоит делать максимально простую и понятную архитектуру, применять шаблоны проектирования и не изобретать велосипед.
Есть компания, которая разрабатывает имитаторы машин. В игре представлен город, в котором ездят разные виды машин. Проектировщики создали один суперкласс, на основе которого объявляются конкретные виды машин.
Другими словами, у нас есть суперкласс Car и много дочерних класса, которые реализуют конкретные типы машин.
Автором данных картинок и описаний я не являюсь. Решил коротко для себя собрать часто используемые паттерны тут. Для более глубокого изучения обращайтесь к оригинальному ресурсу https://refactoring.guru
Очень часто используемый паттерн. Его можно везде встретить. Например, Абстрактная фабрика, Фабричный метод основываются на паттерне стратегия.
Стратегия — это поведенческий паттерн проектирования, который определяет семейство схожих алгоритмов и помещает каждый из них в собственный класс. После чего, алгоритмы можно взаимозаменять прямо во время исполнения программы. Подробнее можете прочитать тут.
Применимость
В 1951 году в японской промышленности появилась методология повышения качества, называвшаяся TPM (Total Productive Maintenance). Она была ориентирована прежде всего на сопровождение , а не на производство. Доктрина TPM базировалась на так называемых "принципах 5S".
Философия 5S состоит из следующих концепций:
- Сэйри. или организация. Абсолютно необходимо знать, где что находится и в этом помогают такие методы, как грамотный выбор имен.
- Сэйтон, или аккуратность. Фрагмент кода должен находиться там, где читатель ожидает его найти.
- Сэйсо, или чистка. Рабочее место должно быть свободно от висящих проводов, грязи, мусора и хлама. Нужно избавляться от закомментированных строк кода и не загромождать код комментариями.
- Сэйкэцу, или стандартизация. Группа достигает согласия по поводу того, как поддерживать чистоту на рабочем месте.
- Сюцукэ, или дисциплина. Программит должен быть достаточно дисциплинированным, чтобы следовать правилам. Он должен часто размышлять о своей работе и быть готовым к изменениям.