SOLID - makstron/info GitHub Wiki

П'ять базових принципів об'єктно-орієнтованого програмування та дизайну запропонована Робертом Мартіном

Буква Абревіатура Назва
S SRP Принцип єдиного обов'язку (Single responsibility principle): Кожен об'єкт має виконувати лише один обов'язок.
O OCP Принцип відкритості/закритості (Open/closed principle): Програмні сутності повинні бути відкритими для розширення, але закритими для змін. Розширення певного класу/інтерфейсу може здійснюватись через його успадкування.
L LSP Принцип підстановки Лісков (Liskov substitution principle): Об'єкти в програмі можуть бути заміненими їх нащадками без зміни коду програми.
I ISP Принцип розділення інтерфейсу (Interface segregation principle): Багато спеціалізованих інтерфейсів краще за один універсальний. Інтерфейс може бути поділений на спеціалізовані ще на стадії проектування, заради майбутньої гнучкості програмних компонентів.
D DIP Принцип інверсії залежностей (Dependency inversion principle): Залежності всередині системи будуються на основі абстракцій, що не повинні залежати від деталей; навпаки, деталі мають залежати від абстракцій. Модулі вищих рівнів не мають залежати від модулів нижчих рівнів.

Wikipedia