TGViewer
PHP | Вопросы собесов PHP | Вопросы собесов @easy_php_ru · 2.3K subscribers
Post #2359 370
🤔 Что такое SOLID?

Это акроним, представляющий пять основных принципов ООП и проектирования, предложенных Робертом Мартином. Эти принципы направлены на повышение гибкости, читаемости, и поддерживаемости кода, а также упрощение его тестирования и рефакторинга. Вот они:

🟠S: Принцип единственной ответственности (Single Responsibility Principle)
Каждый класс должен иметь только одну причину для изменения. Этот принцип подчеркивает, что класс должен заниматься только одной задачей или иметь одну область ответственности.

🟠O: Принцип открытости/закрытости (Open/Closed Principle)
Сущности программы должны быть открыты для расширения, но закрыты для модификации. Это означает, что можно добавлять новые функциональности без изменения существующего кода.

🟠L: Принцип подстановки Барбары Лисков (Liskov Substitution Principle)
Объекты в программе можно заменять их наследниками без изменения свойств программы. Это предполагает, что объекты подклассов должны действовать так же, как объекты суперкласса, от которых они произошли.

🟠I: Принцип разделения интерфейса (Interface Segregation Principle)
Клиенты не должны зависеть от интерфейсов, которые они не используют. Этот принцип говорит о том, что лучше иметь много специализированных интерфейсов, чем один универсальный.

🟠D: Принцип инверсии зависимостей (Dependency Inversion Principle)
Модули высокого уровня не должны зависеть от модулей низкого уровня. Обе категории должны зависеть от абстракций. Кроме того, абстракции не должны зависеть от деталей; детали должны зависеть от абстракций. Это способствует ослаблению связности компонентов системы.

Ставь 👍 и забирай 📚 Базу знаний
More from @easy_php_ru
  1. Oct 11, 2026🤔 Что такое декремент? декремент — это операция, используемые для увеличения или уменьшен…
  2. Oct 10, 2026🤔 Что такое агрегатные функции? Агрегатные функции в SQL и других языках обработки данных…
  3. Oct 9, 2026🤔 Как настроить autoload через Composer? Composer предоставляет механизм автоматической з…
  4. Oct 9, 2026🤔 Какое отличие у протоколов tcp и udp? Это два основных транспортных протокола в интерне…
  5. Oct 8, 2026🤔 Есть ли какое-то различие между одинарными и двойными кавычками? - В большинстве языков…
  6. Oct 7, 2026🤔 В каких случаях используют индексы? Индексы в базах данных используются для ускорения о…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →