Предметный указатель | 319 ◊ общее ядро 78, 80, 87, 164, 202, 229 ◊ общие рамки 79 ◊ ограниченный контекст 64, 240, 248 ◊ партнерство 78, 80, 87, 202 ◊ портов и адаптеров 155 ◊ потребитель–поставщик 81 ◊ предохранительный слой 81, 82, 87, 96, 164, 165, 203, 230, 253 ◊ разделения ответственности команд и запросов 155 ◊ разные пути 84, 87, 197, 203 ◊ сервис с открытым протоколом 81, 83, 87, 165, 180, 203, 230, 252 ◊ события как источник данных 127, 133, 256 ◊ срезов состояния 139 ◊ тактические 144 ◊ транзакционный сценарий 90, 99, 102, 186, 188, 198 Поддомен (Subdomein) 50, 67, 90, 161, 251 ◊ архитектурные решения 45, 47 ◊ взаимодействие поддоменов и ограниченных контекстов 68 ◊ вспомогательный (Supporting subdomains) 45, 47, 48, 96, 194, 226 ◊ выделение поддоменов 42 ◊ изменение типа поддомена 197 ◊ изменчивость 39 ◊ конкурентное преимущество 35, 37 ◊ определение границ поддоменов 41 ◊ основной (Core subdomains) 45, 46, 48, 60, 80, 125, 185, 194, 225 ◊ сложность 35, 38, 187 ◊ согласующиеся сценарии использования 42 ◊ сравнение 37 ограниченных контекстов и поддоменов 67 ◊ стратегия решения 40 ◊ тип 34, 188 ◊ универсальный (Generic subdomains) 45, 47, 48, 74, 84, 96, 186, 194, 226 Поиск, реализация 130 Предметная область (домен) 50, 225 ◊ бизнес-задачи 50 ◊ выявление экспертных знаний 51 ◊ и поддомены 45, 46 ◊ модель 56 ◊ определение ◊ специалисты в предметной области 47 ◊ анализ 44, 224 ◊ моделирование 74 Предметно-ориентированное проектирование См. DDD Преобразование моделей 164, 180 ◊ агрегирование входящих данных 168 ◊ асинхронный режим 167 ◊ без сохранения состояния 165 ◊ с отслеживанием состояния 168 ◊ синхронный режим 165 Прикладной слой См. Сервисный слой Принцип инверсии зависимостей 153 Противоречивые модели 62 Процедурный код, структурирование 244 Публичный интерфейс См. Публичый протокол Публичный протокол 83, 84 ◊ опубликованный язык 83 Р Решение проектирования 68 С Сага 256 Связанность ◊ на уровне реализации 266 ◊ по времени 265 ◊ функциональная 266 Связь между слоями 147 Сервис 240 Сервисный слой 148 Сети данных 281, 286 ◊ архитектура 281 Слоеная архитектура 152, 162 ◊ использование 151 Сложность ◊ глобальная 244 ◊ локальная 244 Слой ◊ бизнес-логики 145, 146, 155 ◊ доступа к данным 145, 146 ◊ инфраструктуры См. Слой доступа к данным ◊ пользовательского интерфейса См. Слой представления ◊ пользовательского сценария См. Сервисный слой ◊ предметной области См. Слой бизнес-логики ◊ представления 145, 148 ◊ ядра См. Слой бизнес-логики Событие 256 ◊ передача состояния 260 ◊ предметной области 262 ◊ типы 258 ◊ управляемое 256 Событийно-ориентированная архитектура 256 События как источник данных 125 События предметной области 118, 125 Состояние гонки 170 Сравнение слоев и уровней 152 Стратегии тестирования ◊ пирамида тестирования 190 перевернутая 190 ◊ ромб тестирования 190 Стратегия тестирования 189 Сущность 110, 111 ◊ иерархия 114
320 | Предметный указатель Т Тактические паттерны 164 Транзакционные модели 271 Транзакционный сценарий 90 ◊ неявные распределенные транзакции 94 ◊ отсутствие транзакционного поведения 91 ◊ применение 96 ◊ распределенные транзакции 93 ◊ реализация 91 ◊ сложности 91 ◊ транзакционное поведение 91 У Уведомление 262 Ф Факты 272 ◊ таблица 272 Х Хранилище данных 276 ◊ архитектура 280 Хранилище событий 133 ◊ удаление данных 141 Ч Чистая архитектура См. Архитектура портов и адаптеров Э Эвристика 184, 187, 192, 225 ◊ декомпозиции 243 ◊ модули 245 Об авторе Влад (Владик) Хононов — инженер-программист из северного Израиля, более 20 лет занимающийся промышленной разработкой. За свою карьеру он успел поработать во множестве больших и малых компаний на разных позициях — от вебмастера до главного архитектора программного продукта. Влад ведет активную медийную деятельность — выступает на конференциях, пишет статьи в блоге. Он много путешествует, консультирует по темам, связанным с предметно-ориентированным проектированием, микросервисами, а также с программной архитектурой в целом. Влад помогает различным компаниям точнее сориентироваться в интересующих их предметных областях, привести в порядок унаследованные системы, а также справляться со сложными архитектурными вызовами. Кроме работы он вместе со своей супругой ухаживает за целой стаей домашних котов.