You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Компонент - минимальная часть продукта отвечающая за определенный функционал.
Каждый компонент должен содержать "публичные" (доменные) интерфейсы или события, определяющие границы его использования.
Компоненты могут агрегировать в себе другие компоненты (фасад) для упрощения переиспользования кода, но это существенно повышает сложность.
Пример компонента: работа с комментариями.
Модуль - максимально самодостаточная часть продукта.
Отличается от компонента тем, что умеет взаимодействовать с пользователем и предоставляет ему готовый функционал.
Модули могут использовать компоненты.
Крайне не желательно, чтобы модуль зависел от другого модуля.
Если такое потребовалось, скорее всего не правильно декомпозирован контекст и стоит подумать о создании общего компонента.
Простой вариант взаимодействия модулей - это создание "публичных" интерфейсов в одном модуле и адаптеров в другом.
Еще один вариант организовать взаимодействие между модулями - доменные события.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
Компонент - минимальная часть продукта отвечающая за определенный функционал.
Каждый компонент должен содержать "публичные" (доменные) интерфейсы или события, определяющие границы его использования.
Компоненты могут агрегировать в себе другие компоненты (фасад) для упрощения переиспользования кода, но это существенно повышает сложность.
Пример компонента: работа с комментариями.
Модуль - максимально самодостаточная часть продукта.
Отличается от компонента тем, что умеет взаимодействовать с пользователем и предоставляет ему готовый функционал.
Модули могут использовать компоненты.
Крайне не желательно, чтобы модуль зависел от другого модуля.
Если такое потребовалось, скорее всего не правильно декомпозирован контекст и стоит подумать о создании общего компонента.
Простой вариант взаимодействия модулей - это создание "публичных" интерфейсов в одном модуле и адаптеров в другом.
Еще один вариант организовать взаимодействие между модулями - доменные события.
Пример модуля: раздел новости
Ссылки:
Beta Was this translation helpful? Give feedback.
All reactions