Каковы принципы SOLID?

Это набор рекомендаций для проектирования, направленных на улучшение поддерживаемости и масштабируемости программного обеспечения.

🏛️

Происхождение

Принципы SOLID были введены Робертом К. Мартином, также известным как Дядя Боб, в его работах по объектно-ориентированному дизайну в начале 2000-х. Эти принципы представляют собой компиляцию пяти дизайнерских концепций, помогающих разработчикам создавать программные системы.

📕

Определение

SOLID — это аббревиатура, обозначающая пять принципов дизайна в объектно-ориентированном программировании: Принцип единственной ответственности (Single Responsibility), Принцип открытости/закрытости (Open/Closed), Принцип подстановки Лисков (Liskov Substitution), Принцип разделения интерфейса (Interface Segregation) и Принцип инверсии зависимостей (Dependency Inversion).

🔍

Цель

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

🔨

Принцип единственной ответственности (SRP)

Класс должен иметь только одну причину для изменения.

🔒

Принцип открытости/закрытости (OCP)

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

🔄

Принцип подстановки Лисков (LSP)

Объекты суперкласса должны быть заменяемы объектами его подклассов без влияния на функциональность.

🔀

Принцип разделения интерфейса (ISP)

Множество специфических для клиента интерфейсов лучше, чем один универсальный интерфейс.

🔄

Принцип инверсии зависимостей (DIP)

Высокоуровневые модули не должны зависеть от низкоуровневых модулей; оба должны зависеть от абстракций.