2019.9.01 пять основных принципов

Одноместный принцип ответственности SRP (Single Ответственность Принцип)
относится к классу одной функции, не все включено. Как люди, распределение работы не может быть слишком много, иначе весь день, хотя занят, но эффективность не высоко.

Открытый Закрытый Принцип OCP (Open-Close Принцип) 
модуль в масштабируемости должны быть открытыми с точки зрения изменения должны быть закрыты. Например: сетевой модуль, только исходная функция сервера, а теперь хочет , чтобы присоединиться к функции клиента,
то он должен быть в коде без изменения функции сервера из помещения, можно увеличить код , который реализует функцию клиента, которая требует ранней стадии проектирования, Они должны быть отделены от сервера и клиента, публичной части реферата.

принцип замещения Рихтер (Лиск принцип замещение LSP) 
суб-класс должен быть в состоянии заменить родительский класс и в любом месте родительского класса может появиться. Например: компания участвовать в ежегодной вечеринке, все сотрудники могут участвовать в розыгрыше, так ли это новые или старые штатные сотрудники,
независимо от сотрудников штаб - квартиры , или экспатриантов, все должны иметь возможность участвовать в розыгрыше, в противном случае компания будет раздор.

Принцип инверсии зависимостей (погружной Принцип инверсии зависимостей) особенности абстрактный зависит, зависит от нижнего слоя верхнего слоя. Пусть B ниже модуля A, B , но нужно использовать функцию А, на
этот раз, B не должен использоваться непосредственно в конкретном классе А: и должен определить абстрактный интерфейс , состоящий из B, A , чтобы достичь этого абстрактного интерфейса, в , используя только абстрактный интерфейс: этим достигается
объект зависимого инвертируется, в также снята зависимости от а, который , в свою очередь , зависит от определения абстрактного интерфейса B. Верхний модуль от нижнего модуля трудно избежать зависимости, если В тоже напрямую зависит от реализации, то это может привести к круговой зависимости. Общей проблемой является необходимость быть включена при компиляции модуля непосредственно к модулю каст файла В, а также должны быть включены при компиляции файла CPP непосредственно в.

Принципы разделения интерфейса (Сегрегация Принцип ISP) 
между модулями через абстрактный интерфейс изолированы, а не через определенный класс сильной связи вместе


Деметра
Деметра (Закон Деметры) , также называемый принцип наименьшего знания (принцип наименьшего знаний аббревиатуры ЛКП), то есть субъект должен иметь мало понимания других объектов, не разговаривать с незнакомыми людьми.
Английский сокращенно :. LoD Demeter можно просто сказать: говорить только с вашими непосредственными друзьями. Для ООД перед ней, как было объяснено несколькими способами: программный объект должен быть немного взаимодействия с другими субъектами. Каждый модуль программного обеспечения для других единиц имеют лишь минимальные знания и ограничиваются теми , тесно связаны с блоком программного обеспечения устройства.

  Деметра намерение состоит в том, чтобы уменьшить связь между классами. Так как каждый класс , чтобы минимизировать зависимость от других классов, и , следовательно, легко сделать функцию системного функциональных модулей независимо друг от друга, при отсутствии друг друг (или очень мало) зависимостей.
Закон Деметры не хочет , чтобы класс непосредственно установить прямой контакт. Если есть необходимость установить контакт, но и надеяться , что через класс передать другу. Таким образом, следствие применения может привести Закон Деметров это: есть много систем промежуточного класса, классы существуют исключительно для взаимной передачи вызовов между классами - что увеличивает систему до определенной степени сложность.
Интересующиеся могут посмотреть на режим фасада дизайн шаблона (фасад) и режим посредника (Mediator), являются примерами применения закона Деметры.

 

Одноместный принцип ответственности SRP (Single Ответственность Принцип)
относится к классу одной функции, не все включено. Как люди, распределение работы не может быть слишком много, иначе весь день, хотя занят, но эффективность не высоко.

Открытый Закрытый Принцип OCP (Open-Close Принцип) 
модуль в масштабируемости должны быть открытыми с точки зрения изменения должны быть закрыты. Например: сетевой модуль, только исходная функция сервера, а теперь хочет , чтобы присоединиться к функции клиента,
то он должен быть в коде без изменения функции сервера из помещения, можно увеличить код , который реализует функцию клиента, которая требует ранней стадии проектирования, Они должны быть отделены от сервера и клиента, публичной части реферата.

принцип замещения Рихтер (Лиск принцип замещение LSP) 
суб-класс должен быть в состоянии заменить родительский класс и в любом месте родительского класса может появиться. Например: компания участвовать в ежегодной вечеринке, все сотрудники могут участвовать в розыгрыше, так ли это новые или старые штатные сотрудники,
независимо от сотрудников штаб - квартиры , или экспатриантов, все должны иметь возможность участвовать в розыгрыше, в противном случае компания будет раздор.

Принцип инверсии зависимостей (погружной Принцип инверсии зависимостей) особенности абстрактный зависит, зависит от нижнего слоя верхнего слоя. Пусть B ниже модуля A, B , но нужно использовать функцию А, на
этот раз, B не должен использоваться непосредственно в конкретном классе А: и должен определить абстрактный интерфейс , состоящий из B, A , чтобы достичь этого абстрактного интерфейса, в , используя только абстрактный интерфейс: этим достигается
объект зависимого инвертируется, в также снята зависимости от а, который , в свою очередь , зависит от определения абстрактного интерфейса B. Верхний модуль от нижнего модуля трудно избежать зависимости, если В тоже напрямую зависит от реализации, то это может привести к круговой зависимости. Общей проблемой является необходимость быть включена при компиляции модуля непосредственно к модулю каст файла В, а также должны быть включены при компиляции файла CPP непосредственно в.

Принципы разделения интерфейса (Сегрегация Принцип ISP) 
между модулями через абстрактный интерфейс изолированы, а не через определенный класс сильной связи вместе


Деметра
Деметра (Закон Деметры) , также называемый принцип наименьшего знания (принцип наименьшего знаний аббревиатуры ЛКП), то есть субъект должен иметь мало понимания других объектов, не разговаривать с незнакомыми людьми.
Английский сокращенно :. LoD Demeter можно просто сказать: говорить только с вашими непосредственными друзьями. Для ООД перед ней, как было объяснено несколькими способами: программный объект должен быть немного взаимодействия с другими субъектами. Каждый модуль программного обеспечения для других единиц имеют лишь минимальные знания и ограничиваются теми , тесно связаны с блоком программного обеспечения устройства.

  Деметра намерение состоит в том, чтобы уменьшить связь между классами. Так как каждый класс , чтобы минимизировать зависимость от других классов, и , следовательно, легко сделать функцию системного функциональных модулей независимо друг от друга, при отсутствии друг друг (или очень мало) зависимостей.
Закон Деметры не хочет , чтобы класс непосредственно установить прямой контакт. Если есть необходимость установить контакт, но и надеяться , что через класс передать другу. Таким образом, следствие применения может привести Закон Деметров это: есть много систем промежуточного класса, классы существуют исключительно для взаимной передачи вызовов между классами - что увеличивает систему до определенной степени сложность.
Интересующиеся могут посмотреть на режим фасада дизайн шаблона (фасад) и режим посредника (Mediator), являются примерами применения закона Деметры.

рекомендация

отwww.cnblogs.com/LiTZen/p/11444259.html