Перейти к основному содержимому

Обзор

Методология призвана упростить и стандартизировать декомпозицию логики для больших и долгоживущих проектов.

Для этого она вводит ряд концепций и абстракций, на которых может базироваться архитектура от проекта к проекту - отсюда получаем ряд преимуществ

info

Модуль - структурная единица проекта (файл / директория)

Явная бизнес-логика#

Модули распределяются согласно скоупу влияния, бизнес-ответственности и техническому назначению

Благодаря этому архитектура стандартизируется и становится более простой для ознакомления

Адаптация к новым условиям#

Каждый компонент архитектуры имеет свое назначение и не влияет на другие

Благодаря этому под новые требования можно независимо модифицировать функциональность приложения без непредвиденных последствий

Техдолг и рефакторинг#

Каждый модуль является независимым и самодостаточным

Благодаря этому можно переписать его с нуля без неожиданных сайд-эффектов

Масштабирование проекта и команды#

Увеличение функциональности ведет к значительно меньшему усложнению проекта, т.к. вся логика распределена детерминированно и изолированно

Благодаря этому легко добавлять и онбордить новых людей в команду, а также расширять функциональность проекта

Контролируемое переиспользование логики#

Каждый модуль имеет свои ограничения и рекоммендации на переиспользуемость согласно своему слою

Благодаря этому сохраняется баланс между соблюдением принципа DRY и возможности кастомизировать логику модуля без оверхедных переопределений

См. также#