vngrv / solid

SOLID design principles Ruby

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SOLID implementation refference

Определение

SOLID в программировании — мнемонический акроним, введённый Майклом Фэзерсом для первых пяти принципов, названных Робертом Мартином в начале 2000-х, которые означали 5 основных принципов объектно-ориентированного программирования и проектирования.

Необходимость

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

SOLID - руководство для проектирование и musthave методология для Объектно Ориентированного Программирования.

Расшифровка

  1. S (SRP) / Single Responsibility Principle - Принцип единственной ответственности
  2. O (OCP) / Open–Closed Principle - Принцип открытости/закрытости
  3. L (LSP) / Liskov Substitution Principle - Принцип подстановки Лисков
  4. I (ISP) / Interface Segregation Principle - Принцип разделения интерфейса
  5. D (DIP) / Dependency Inversion Principle - Принцип инверсии зависимостей

Суть

  1. Принцип единственной ответственности - Модуль должен иметь одну и только одну причину для изменения.
  2. Принцип открытости/закрытости - Должна иметься возможность расширять поведение программных сущностей без их изменения (путем наследования).
  3. Принцип подстановки Лисков - Наследующий класс должен дополнять, а не изменять базовый (наследование).
  4. Принцип разделения интерфейса - Много интерфейсов, специально предназначенных для клиентов, лучше, чем один интерфейс общего назначения (прочь избыточность).
  5. Принцип инверсии зависимостей - Зависимость на Асбракциях, а не на реализации.

About

SOLID design principles Ruby


Languages

Language:Ruby 100.0%