Написано: 14.12.2022

SOLID.

SOLID – мнемонический акроним для пяти основных принципов объектно-ориентированного программирования и проектирования.

S – принцип единственной ответственности (single responsibility principle, SRP).

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

O – принцип открытости/закрытости (open-closed principle, OCP).

“программные сущности … должны быть открыты для расширения, но закрыты для модификации”.

L – принцип подстановки Лисков (Liskov substitution principle, LSP).

“функции, которые используют базовый тип, должны иметь возможность использовать подтипы базового типа не зная об этом”.

I – принцип разделения интерфейса (interface segregation principle, ISP).

“много интерфейсов, специально предназначенных для клиентов, лучше, чем один интерфейс общего назначения”.

D – принцип инверсии зависимостей (dependency inversion principle, DIP).

“Абстракции не должны зависеть от деталей. Детали должны зависеть от абстракций”.