Принципы SOLID

SOLID это аббревиатура пяти основных принципов дизайна классов в объектно-ориентированном проектировании — Single responsibility, Open-closed, Liskov substitution, Interface segregation и Dependency inversion.

Читать дальше >

DRY, DIE, KISS, SOLID, YAGNI

DRY — расшифровывается как Don’t Repeat Youself — не повторяйся, также известен как DIE — Duplication Is Evil — дублирование это зло. Этот принцип заключается в том, что нужно избегать повторений одного и того же кода. Лучше использовать универсальные свойства и функции.

KISS — Keep It Simple, Stupid — не усложняй! Смысл этого принципа программирования заключается в том, что стоит делать максимально простую и понятную архитектуру, применять шаблоны проектирования и не изобретать велосипед.

Читать дальше >

Шаблон проектирования Стратегия

Есть компания, которая разрабатывает имитаторы машин. В игре представлен город, в котором ездят разные виды машин. Проектировщики создали один суперкласс, на основе которого объявляются конкретные виды машин.

Другими словами, у нас есть суперкласс Car и много дочерних класса, которые реализуют конкретные типы машин.

Читать дальше >

Конспект про паттерны проектирования

Автором данных картинок и описаний я не являюсь. Решил коротко для себя собрать часто используемые паттерны тут. Для более глубокого изучения обращайтесь к оригинальному ресурсу https://refactoring.guru

Стратегия

Очень часто используемый паттерн. Его можно везде встретить. Например, Абстрактная фабрика, Фабричный метод основываются на паттерне стратегия.

Стратегия — это поведенческий паттерн проектирования, который определяет семейство схожих алгоритмов и помещает каждый из них в собственный класс. После чего, алгоритмы можно взаимозаменять прямо во время исполнения программы. Подробнее можете прочитать тут.

Применимость

  • Когда вам нужно использовать разные вариации какого-то алгоритма внутри одного объекта.
  • Когда у вас есть множество похожих классов, отличающихся только некоторым поведением.
  • Когда вы не хотите обнажать детали реализации алгоритмов для других классов.
Читать дальше >

Принципы 5S

В 1951 году в японской промышленности появилась методология повышения качества, называвшаяся TPM (Total Productive Maintenance). Она была ориентирована прежде всего на сопровождение , а не на производство. Доктрина TPM базировалась на так называемых "принципах 5S".

Философия 5S состоит из следующих концепций:

- Сэйри. или организация. Абсолютно необходимо знать, где что находится и в этом помогают такие методы, как грамотный выбор имен.

- Сэйтон, или аккуратность. Фрагмент кода должен находиться там, где читатель ожидает его найти.

- Сэйсо, или чистка. Рабочее место должно быть свободно от висящих проводов, грязи, мусора и хлама. Нужно избавляться от закомментированных строк кода и не загромождать код комментариями.

- Сэйкэцу, или стандартизация. Группа достигает согласия по поводу того, как поддерживать чистоту на рабочем месте.

- Сюцукэ, или дисциплина. Программит должен быть достаточно дисциплинированным, чтобы следовать правилам. Он должен часто размышлять о своей работе и быть готовым к изменениям.

Читать дальше >