Разница REP и CCP

Мне сложно понять разницу между и. Есть ли у кого-нибудь интуитивное объяснение в лучшем случае на примере?

Что я выяснил на данный момент:

REP (Reuse-Release-Equivalence-Principle): Гранулярность повторного использования - это гранулярность выпуска. Классы в пакете должны быть связаны по содержанию и обслуживать тему более высокого уровня.

CRP (Common-Reuse-Principle): Компоненты не должны зависеть от классов, которые им не нужны. Классы, которые используются вместе, должны быть сгруппированы в один компонент.

Я не понимаю, почему говорится об инклюзивном принципе (пакет становится больше) и эксклюзивном (пакет становится меньше)? Кроме того, если что-то принадлежит друг другу с точки зрения содержания (REP), разве это не используется вместе (CRP)?

И почему у меня будут проблемы со слишком большим количеством модификаций компонентов, если я буду проектировать свои пакеты только в соответствии с REP а также CRP и игнорируя CCP (Common-Closure-Principle)?

0 ответов

Другие вопросы по тегам