Эванс «Domain-Driven Design: Tackling Complexity in the Heart of Software»

What Is Domain-Driven Design? Over the last decade or two, a philosophy has developed as an undercurrent in the object community. The premise of domain-driven design is two-fold:
- For most software projects, the primary focus should be on the domain and domain logic; and
- Complex domain designs should be based on a model.
Domain-driven design is not a technology or a methodology. It is a way of thinking and a set of priorities, aimed at accelerating software projects that have to deal with complicated domains.
Что такое проектирование, ориентированное на предметную область (DDD)? За последние 10-20 лет эта философия сформировалась как одно из направлений в сообществе объектно-ориентированных разработчиков. Две основные предпосылки DDD следующие:
- в большинстве проектов по разработке ПО основное внимание должно уделяться предметной области и ее логике;
- разработки в рамках сложных предметных областей должны базироваться на модели предметной области.
DDD — не технология и не методология. Это скорее особый путь мышления и набор приоритетов, который направлен на ускорение проектов по разработке ПО, связанных со сложными предметными областями.
DomainDrivenDesign.org — Сайт автора книги
Рецензия на книгу
Совместим ли DDD и Goal-Directed Design А. Купера — дискуссия в рассылке IxDA Discuss
Первая глава книги [PDF, 263kB]
Заказать книгу на Amazon.com
Обновление — скоро выйдет книга на схожую тематику на русском языке:
Применение DDD и шаблонов проектирования: проблемно-ориентированное проектирование приложений с примерами на C# и .NET



Есть интересная ссылка? Пришли ее нам!


Реакции на пост (4)
Отслеживать в RSS | TrackBack URI
Ребята, книжка-то хорошая, но при чём здесь «Научные основы юзабилити»? Она про подход к проектированию ВНУТРЕННЕГО УСТРОЙСТВА системы, в то время как юзабилити, очевидно, занимается только ВНЕШНИМ.
Ubiquitous Language – это язык для общения команды разработчиков с экспертами предметной области. Основная идея – чтобы разработчики пользовались терминами предметной области, а не только своими «контейнерами», «классами», «итераторами», «контроллерами», таким образом минимизируя разрыв между моделью и реализацией и облегчая коммуникацию в проекте.
Кстати, на InfoQ.com можно скачать мини-дайджест с основными тезисами книги весом на 100 страниц: http://www.infoq.com/minibooks/domain-driven-design-quickly
За ссылку спасибо!
Книжка дана по простой причине — проектировщик ПИ должен быть в курсе современных подходов разработки ПО. Те же методы проектирования интерфейса хорошо согласовываются с одними подходами и плохо с другим. GDD Купера с трудом согласовывается с Agile подходами, к примеру.
Книга «Применение DDD и шаблонов проектирования» – о том, как строить мосты между пользователями и разработчиками, предметной областью и программным обеспечением, логикой и хранением информации, проектировщиками баз данных и программистами (объектно-ориентированными).
Назначение книги: показать, как строится четкая и удобная, с точки зрения сохраняемости, модель предметной области (Domain Model). Также показано, как может выглядеть решение сохраняемости для модели предметной
области и ее связи с базой данных. Основное внимание, в книге, уделяется не самим шаблонам проектирования, а их применению, а также обсуждения аспектов проектирования. Также рассматриваются вопросы разработке посредством тестирования (РПТ — Test-Driven Development (TDD)).
Книга адресована специалистам в следующих областях:
Объектное ориентированное программирование,
платформа .NET,
C# и аналогичные языки программирования.
Реляционные базы данных, например: SQL Server.
Тем, кто работает в .NET, книга поможет освоить более фундаментальные подходы, а те, кто работает с Java, извлекут для себя пользу из описания и примеров совместного использования ППО и объектно-реляционного преобразования.
http://www.williamspublishing.com/Books/978-5-8459-1296-1.html#ogl
2gvam: отличная новость! Это конечно другая книга, но все равно интересно.