воскресенье, 14 февраля 2016 г.

SOLID (object-oriented design)

SOLID - это 5 принципов проектирования классов в ООП.

1) Single responsibility principle(S):
Каждый класс должна быть возложена только одна определенная обязанность.

2) Open/closed principle(O):
Программные сущности должны быть открыты для расширения, но закрыты для изменений.

3) Liskov substitution principle(L):
Для каждого объекта o1 типа S существует объект o2 типа T, который для всех программ P определен в терминах T, то поведение P не изменится, если o2 заменить на o1 при условии, что S является подтипом T.
Другими словами, функции, которые используют ссылки на базовые классы, должны иметь возможность использовать объекты производных классов, не зная об этом.
(Derived classes must be substitutable for their base classes)

4) Interface segregation princilpe(I):
Лучше иметь множество специализированых интерфейсов, чем один универсальный.

5) Dependency inversion principle(D):
Зависимости в системе должны строиться на основе абстракций. Модули нижнего уровня не должны зависеть от модулей верхнего уровня. И те и те должны зависеть от абстракций. В свою очередь, абстракции не должны зависеть от деталей. Детали должны зависить от абстракций.

Комментариев нет:

Отправить комментарий