Предметно-ориентированное проектирование (DDD), Эрик Эванс

Предметно-ориентированное проектирование (DDD), Эрик Эванс

Классическая книга Э. Эванса освещает наиболее общий, стратегический круг вопросов, связанных с объектно-ориентированной разработкой программного обеспечения. Это переработка и структуризация знаний о предметных областях, применение типовых архитектурных шаблонов, построение и анализ моделей предметных областей, проектирование программных объектов с точки зрения качества их взаимодействия и передачи логической структуры знаний, организация программ на основе крупномасштабных структур, выработка общего языка и стратегии коммуникации в группе.

Подход автора строится на динамичном рефакторинге модели и постоянной дистилляции знаний. Это позволяет достигнуть высокой степени гармонии между логикой предметной области и кодом программы, а также достаточной гибкости программной архитектуры для целей удобной доработки и интеграции программного обеспечения. Книга насыщена практическими примерами из реальных проектов.

Мировое сообщество программистов признает, что моделирование предметных областей — ключевой раздел проектирования программного обеспечения. В моделях предметных областей разработчики выражают сложные функции своих программ, реализуя их затем в таком виде, который отвечает реальным потребностям пользователей. Но несмотря на очевидную важность предмета, существует очень мало пособий по эффективному внедрению моделирования предметных областей в практику разработки программ.

Книга Эрика Эванса заполняет этот пробел.

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

Из книги читатель узнает, как с помощью модели предметной области придать разработке сложной системы нужную направленность и динамику. Выделены основные приемы и образцы-шаблоны, образующие общий язык группы разработчиков. Особо подчеркивается необходимость рефакторинга не только кода, но и модели в его основе, что в сочетании с итерационной agile-методикой приводит к углублению знаний о предметной области и повышению качества взаимодействия между специалистами и программистами. Подход книги строится именно на этом фундаменте, предлагая модели и архитектуры для систем и организаций любой сложности.

В частности, в книге рассматриваются следующие темы:

  • Единый язык общения для всей группы разработчиков.
  • Глубокая связь между моделью и программной реализацией.
  • Выделение ключевых черт модели.
  • Управление циклом существования объектов.
  • Написание легко интегрируемого кода предметной области.
  • Как сделать сложный код очевидным и предсказуемым в поведении.
  • Формулировка введения в предметную область.
  • Дистилляция ядра предметной области.
  • Поиск неявных понятий, скрытых в модели.
  • Применение аналитических шаблонов.
  • Архитектурные шаблоны в моделях.
  • Поддержание целостности больших систем.
  • Сосуществование нескольких моделей в одном проекте.
  • Организация систем в соответствии с крупномасштабными структурами.
  • Качественные скачки в моделях.

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

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

Об авторе

Эрик Эванс, является основателем Domain Language — консультативной группы, которая помогает различным фирмам строить и развивать программные системы, тесно связанные с их профессиональной деятельностью. Автор работал в качестве архитектора и программиста над большими объектно-ориентированными системами в ряде сложных коммерческих и технических предметных областей, начиная с 1980-х годов. Он также занимается повышением квалификации групп разработчиков в области экстремального программирования.

Содержание

  • Введение 17
  • ЧАСТЬ I. МОДЕЛЬ ПРЕДМЕТНОЙ ОБЛАСТИ В РАБОТЕ 27
  • Глава 1. Переработка знаний 33
  • Глава 2. Коммуникация и язык 45
  • Глава 3. Связь между моделью и реализацией 61
  • ЧАСТЬ II. СТРУКТУРНЫЕ ЭЛЕМЕНТЫ
  • ПРЕДМЕТНООРИЕНТИРОВАННОГО ПРОЕКТИРОВАНИЯ 75
  • Глава 4. Изоляция предметной области 79
  • Глава 5. Модель, выраженная в программе 89
  • Глава 6. Цикл существования объектов модели 123
  • Глава 7. Работа с языком: расширенный пример 153
  • ЧАСТЬ III. УГЛУБЛЯЮЩИЙ РЕФАКТОРИНГ 175
  • Глава 8. Качественный скачок 181
  • Глава 9. Перевод неявных понятий в явные 191
  • Глава 10. Гибкая архитектура 221
  • Глава 11. Применение аналитических шаблонов 263
  • Глава 12. Шаблоны и модель 275
  • Глава 13. Углубляющий рефакторинг 287
  • ЧАСТЬ IV. СТРАТЕГИЧЕСКОЕ ПРОЕКТИРОВАНИЕ 291
  • Глава 14. Поддержание целостности модели 295
  • Глава 15. Дистилляция 345
  • Глава 16. Крупномасштабная структура 375
  • Глава 17. Объединение стратегических подходов 411
  • Заключение 423
  • Приложение. Использование шаблонов в этой книге 429
  • Глоссарий 433
  • Список литературы 437
  • Фотографии 438
  • Предметный указатель 439



Написать отзыв

Примечание: HTML разметка не поддерживается! Используйте обычный текст.
    Плохо           Хорошо

  • Просмотров: 3703
  • Автор: Эрик Эванс
  • Издательство: Вильямс
  • Год: 2018
  • Вес (г): 590
  • Размер (мм): 0 x 0 x 0
  • Кол-во страниц: 448
  • Обложка: твёрдая
  • Бумага: офсетная
  • ISBN: 978-5-6040724-9-3
  • Наличие: В наличии
  • 189.90€
  • Цена содержит НСО
  • Без НДС: 189.90€

Теги: Эрик Эванс, Eric Evans

Пользовательские истории — это метод описания требований к разрабатываемому продукту. Автор доступно..
24.50€
Без НДС: 24.50€