وبلاگ بلیان

Предметно-ориентированное проектирование (DDD). Структуризация сложных программных систем

معرفی کتاب «Предметно-ориентированное проектирование (DDD). Структуризация сложных программных систем» نوشتهٔ Эванс, Эрик، منتشرشده توسط نشر ООО "И. Д. Вильямс" در سال 2011. این کتاب در فرمت djvu، زبان ru ارائه شده است.

Введение ......Page 17 Часть I. Модель предметной области в работе ......Page 27 Роль и выбор модели ......Page 29 Алгоритмическая часть программы ......Page 30 Глава 1. Переработка знаний ......Page 32 Составляющие эффективного моделирования ......Page 36 Переработка знаний ......Page 37 Непрерывное обучение ......Page 38 Информоемкая архитектура ......Page 39 Извлечение скрытого понятия ......Page 40 Углубленные модели ......Page 42 Единый язык ......Page 44 Моделирование вслух ......Page 49 Одна команда — один язык ......Page 50 Документация, диаграммы, схемы ......Page 52 Письменная проектная документация ......Page 54 Выполняемый код решает все ......Page 56 Пояснительные модели ......Page 57 Глава 3. Связь между моделью и реализацией ......Page 59 Проектирование по модели ......Page 60 Парадигмы моделирования и средства программирования ......Page 63 Анатомия модели: зачем модель нужна пользователю ......Page 69 Моделировщики-практики ......Page 70 Часть II. Структурные элементы предметно-ориентированного проектирования ......Page 73 Многоуровневая архитектура ......Page 76 Связь между уровнями ......Page 80 Архитектурные среды ......Page 81 "Антишаблон" интеллектуального интерфейса пользователя ......Page 82 Другие виды изоляции ......Page 85 Глава 5. Модель, выраженная в программе ......Page 86 Ассоциации ......Page 87 Сущности (указуемые объекты) ......Page 92 Моделирование СУЩНОСТЕЙ ......Page 95 Проектирование операций идентификации ......Page 96 Объекты-значения ......Page 98 Проектирование ОБЪЕКТОВ-ЗНАЧЕНИЙ ......Page 100 Проектирование ассоциаций с помощью ОБЪЕКТОВ-ЗНАЧЕНИЙ ......Page 103 Службы ......Page 104 Службы и изоляция уровня предметной области ......Page 105 Доступ к службам ......Page 107 Модули (пакеты) ......Page 108 Гибкая модульность ......Page 109 Ловушки инфраструктуры ......Page 111 Парадигмы моделирования ......Page 113 Причины доминирования объектной парадигмы ......Page 114 Проектирование по модели в условиях смешения парадигм ......Page 116 Глава 6. Цикл существования объектов модели ......Page 119 Агрегаты ......Page 120 Фабрики ......Page 129 Выбор фабрик и их местонахождения ......Page 131 Когда достаточно конструктора ......Page 133 Проектирование интерфейса ......Page 134 Восстановление хранимых объектов ......Page 135 Хранилища ......Page 137 Запросы к хранилищам ......Page 141 Реализация хранилища ......Page 143 Связь с фабриками ......Page 145 Проектирование объектов для реляционной базы данных ......Page 147 Введение в систему управления доставкой ......Page 149 Изоляция предметной области: добавление прикладных операций ......Page 151 Отделение сущностей от значений ......Page 152 Проектирование ассоциаций в модели ......Page 153 Границы агрегатов ......Page 154 Выбор хранилищ ......Page 155 Пример рабочей функции: изменение места назначения груза ......Page 156 Пример рабочей функции: повторение заказов ......Page 157 Фабрики и конструкторы для объекта Груз ......Page 158 Добавление объекта Манипуляция ......Page 159 Перерыв на рефакторинг: альтернативный агрегат Груз ......Page 160 Модули в модели грузопоставок ......Page 162 Новая функция: распределение заказов ......Page 163 Связь между двумя системами ......Page 165 Усовершенствование модели: введение подразделений ......Page 166 Итоги ......Page 168 Часть III. Углубляющий рефакторинг ......Page 170 Уровни рефакторинга ......Page 171 Углубленные модели ......Page 172 Углубленная модель и гибкая архитектура ......Page 173 Процесс познания ......Page 174 Глава 8. Качественный скачок ......Page 175 Модель неплоха, но... ......Page 176 Скачок ......Page 178 Углубленная модель ......Page 179 Трезвое решение ......Page 181 Концентрация на основах ......Page 182 Каскад озарений ......Page 183 Внимание к языку ......Page 185 Выявление узких мест ......Page 189 Размышление над противоречиями ......Page 193 Чтение книг ......Page 194 Явные условия-ограничения ......Page 196 Процессы как объекты предметной области ......Page 198 Спецификация ......Page 199 Применение и реализация спецификаций ......Page 202 Глава 10. Гибкая архитектура ......Page 214 Информативные интерфейсы ......Page 216 Функции без побочных эффектов ......Page 219 Утверждения ......Page 224 Концептуальные контуры ......Page 227 Изолированные классы ......Page 231 Замкнутость операций ......Page 233 Декларативная архитектура ......Page 235 Декларативный стиль архитектуры ......Page 238 Выделение подобластей ......Page 245 Использование сложившихся формальных систем ......Page 246 Глава 11. Применение аналитических шаблонов ......Page 255 Аналитические шаблоны как источник знания ......Page 266 Глава 12. Шаблоны и модель ......Page 267 Стратегия ......Page 268 Композит ......Page 271 Почему не "мелкий объект" (flyweight)? ......Page 276 Инициирование ......Page 278 Предыдущие наработки ......Page 279 Расчет времени ......Page 280 Кризис как потенциальная возможность ......Page 281 Часть IV. Стратегическое проектирование ......Page 282 Глава 14. Поддержание целостности модели ......Page 285 Ограниченный контекст ......Page 288 Распознавание дефектов внутри ограниченного контекста ......Page 291 Непрерывная интеграция ......Page 292 Карта контекстов ......Page 294 Взаимосвязи между ограниченными контекстами ......Page 301 Общее ядро ......Page 302 Группы "заказчик-поставщик" ......Page 303 Конформист ......Page 307 Предохранительный уровень ......Page 310 Проектирование интерфейса предохранительного уровня ......Page 311 Реализация предохранительного уровня ......Page 312 Поучительная история ......Page 314 Отдельное существование ......Page 315 Общедоступный язык ......Page 317 Унификация слона ......Page 320 Помещение самих себя в контекст ......Page 323 Принятие того, что нельзя изменить: контуры внешних систем ......Page 324 Проектируемая система ......Page 325 Учет особых случаев отдельными моделями ......Page 326 Компромиссы ......Page 327 Если проект уже в работе ......Page 328 Слияние контекстов: от отдельного существования к общему ядру ......Page 329 Слияние контекстов: от общего ядра к непрерывной интеграции ......Page 330 Вытеснение устаревшей системы ......Page 331 От открытого протокола к общедоступному языку ......Page 332 Глава 15. Дистилляция ......Page 334 Смысловое ядро ......Page 336 Как распределить работу ......Page 338 Эскалация дистилляции ......Page 339 Неспециализированные подобласти ......Page 340 "Неспециализированный" не значит "хорошо переносимый" ......Page 345 Введение в предметную область ......Page 346 Схематическое ядро ......Page 348 Дистилляционный документ ......Page 349 Разметка ядра ......Page 350 Связные механизмы ......Page 351 Сравнение связных механизмов и неспециализированных подобластей ......Page 353 Когда механизм входит в смысловое ядро ......Page 354 Выделенное ядро ......Page 355 Цена создания выделенного ядра ......Page 356 Эволюция коллективных решений ......Page 357 Абстрактное ядро ......Page 362 Выбор целей рефакторинга ......Page 363 Глава 16. Крупномасштабная структура ......Page 364 Эволюционная организация ......Page 367 Метафорический образ системы ......Page 369 Уровни разделения обязанностей ......Page 371 Выбор подходящих уровней ......Page 380 Уровень знаний ......Page 384 Среда подключаемых компонентов ......Page 391 Насколько жесткой должна быть структура ......Page 395 Структурирующий рефакторинг ......Page 396 Реструктуризация дает гибкую архитектуру ......Page 397 Дистилляция ......Page 398 Сочетание крупномасштабных структур и ограниченных контекстов ......Page 399 Сочетание крупномасштабной структуры и дистилляции ......Page 402 Первоначальная оценка ......Page 403 Самозарождение структуры в ходе разработки ......Page 404 Шесть принципов принятия решений при стратегическом проектировании ......Page 405 То же верно и для технических сред проектирования ......Page 408 Долой генеральный план ......Page 409 Заключение ......Page 410 Взгляд в будущее ......Page 414 Приложение. Использование шаблонов в этой книге ......Page 415 Глоссарий ......Page 418 Список литературы ......Page 422 Фотографии ......Page 423 Предметный указатель ......Page 424
دانلود کتاب Предметно-ориентированное проектирование (DDD). Структуризация сложных программных систем