Какая конструкция поддерживает низкое сцепление? - PullRequest
5 голосов
/ 20 апреля 2011

Design #1

Design #2

Какой дизайн поддерживает общее низкое сцепление?а почему?

Ответы [ 3 ]

1 голос
/ 20 апреля 2011

В первом один платеж связан с продажей. Во втором - в сочетании с регистрацией и продажей. Я бы сказал, что первое имеет более низкую связь, потому что в Регистре нет понятия оплаты. Оплата может быть полностью отменена и не потребует никаких изменений для регистрации. Во втором случае, если вы исключили «Платеж», необходимо изменить и «Регистрация», и «Продажа».

1 голос
/ 20 апреля 2011

Я не вижу смысла в первом примере.Регистрация не нужна?

Во втором примере можно использовать любой вид оплаты.(Виза, наличные и т. Д.).Следовательно, он более слабо связан.

1 голос
/ 20 апреля 2011

В первом Payment создается Sale, так что это более тесно связано.

во втором - слабая связь с внедрением зависимости - http://en.wikipedia.org/wiki/Dependency_injection, ведь это шаблон проектирования, который отделяет поведение от разрешения зависимости, таким образом отделяет высокозависимых компонентов , Payment и Sale были сильно зависимы на первом рисунке.

...