Grasp

Что это

Grasp(general responsibility assignment software patterns) - шаблоны ООП для решения общих задач по назначению ответственностей классам и объектам.

Information Expert

Information Expert - ответственность должна быть назначена тому, кто владеет максимумом необходимой информации для исполнения. Информация должна обрабатываться там, где она содержится. Если POJO класс имеет все необходимые данные для задачи, он сам должен ее выполнять. Класс Order - getSum().

Creator

Creator - создавать экземпляры класса должен класс, которому они нужны. Не класс клиент.

Controller

Controller - класс отвечающий на запросы от пользователя. Может иметь: логирование, аутентификацию, авторизацию, кеширование. Контроллер - объект который превращает многопоточный код в однопоточный.

High Cohesion(high cohesion)(single responsibility)

High Cohesion(high cohesion)(single responsibility) - классы должны содержать связанную бизнес — логику. Если возвести "Low Coupling" в абсолют, можно прийти к тому, чтобы разместить всю функциональность в одном единственном классе. Solid - Single responsibility.

Low Coupling(низкой связанности)(Dependency Inversion Principle)

Low Coupling(низкой связанности) - количество зависимостей, должно быть минимальным.

Polymorphism

Polymorphism - один интерфейс - много реализаций.

Pure Fabrication

Pure Fabrication - Facade of GoF.

Indirection

Indirection - слабое зацепление между элементами системы, обеспечивается назначением промежуточного объекта их посредником. Mediator of GoF.

Protected Variations

Protected Variations - изменение одних элементов системы не должно влиять на другие. Dependency inversion of Solid.