Информация о книге

978-5-8459-1597-9,978-5-8459-1942-7

Главная  » Научно-техническая литература » Информационные технологии. Компьютеры » Операционные системы » Операционные системы: общие вопросы, администрирование, программирование » Предметно-ориентированное проектирование (DDD): структуризация сложных программных систем

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

Диалектика / Вильямс, 2015 г., 978-5-8459-1597-9,978-5-8459-1942-7


Описание книги

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

Ключевые слова

Поделиться ссылкой на книгу



Дополнительно о книге

В процессе разработки программного обеспечения хватает всевозможных трудностей. Главное — это естественная сложность предметной области, к которой относится решаемая задача. Всякий раз, когда при разработке программного обеспечения возникает необходимость автоматизировать созданные человеком сложные системы, избежать этой сложности нельзя — ею можно только “овладеть”. Для этого необходима хорошая предметно)ориентированная модель, проникающая значительно дальше поверхностного взгляда на проблему. Если в такой модели удастся правильно отразить внутреннюю структуру предметной области, то разработчики программного обеспечения получат именно тот инструмент, в котором они нуждаются. Хорошая модель предметной области представляет огромную ценность, но построить ее нелегко. Умеют это делать немногие, а научить других этому искусству очень трудно. Эрик Эванс относится к тем немногим людям, которые хорошо умеют строить модели предметных областей. Я обнаружил это, непосредственно работая с ним. То был один из счастливых случаев, когда твой клиент оказывается более квалифицированным, чем ты сам. Наше сотрудничество было недолгим, но необыкновенно интересным. С тех пор мы постоянно держали связь, и я в течение долгого времени наблюдал, как вызревала эта книга. Надо признаться, ожидание оказалось не напрасным. В результате длительной “эволюции” этой книги были достигнуты весьма амбициозные цели — дать полное справочное описание техники моделирования предметных областей, создать контекст, в котором этот непростой вид деятельности можно было бы успешно объяснять и преподавать. В процессе создания книги я почерпнул из нее множество новых идей, и будет неудивительно, если даже опытные специалисты в области концептуального моделирования также обогатят свой арсенал после ее изучения. Эрик Эванс сумел сформулировать и закрепить многое из того, что мы постепенно осознавали годами. Прежде всего, в предметно-ориентированном моделировании нельзя отделять понятия (концепции) от их реализации. Специалист по моделированию предметных областей способен не только чертить диаграммы вместе с экспертом-аналитиком, но и программировать на Java вместе с программистом. Частично это происходит потому, что нельзя построить полезную концептуальную модель, не рассматривая вопросы ее реализации. Но основная причина единства понятия и ее реализации все же состоит в том, что модель предметной области приносит наибольшую пользу только тогда, когда она предоставляет специалисту в этой предметной области и инженеру-разработчику единый язык, на котором они могли бы разговаривать друг с другом. Еще один урок, который можно почерпнуть из этой книги, таков: в моделях предметных областей на самом деле не разделяют архитектуру и реализацию. Как и многие другие, я пришел к отрицанию принципа поэтапности — “сначала строим модель, потом думаем о реализации”. Опыт Э. Эванса учит нас, что действительно мощные модели эволюционируют со временем, и даже высококвалифицированные специалисты иногда обнаруживают, что наилучшие идеи приходят к ним уже после первого выпуска соответствующих программных систем. Я думаю (и надеюсь), что эта книга сделает в своей области очень важное дело: поможет структурировать и разложить “по полочкам” весьма зыбкую и неопределенную область знания, а также научит многих людей пользоваться этим ценным инструментом. Модели предметных областей могут оказать огромное влияние на разработку программного обеспечения, какие бы среды и языки при этом не использовались. И последнее, но важное замечание. Одна из особенностей этой книги — это способность автора откровенно говорить о своих неудачах. Многие авторы любят создавать в своих книгах стерильную атмосферу всемогущества. Эрик Эванс же дает понять, что он, как и все мы, сталкивался в своей практике как с успехами, так и с разочарованиями. Важно то, что он смог научиться чемуто как на победах, так и на поражениях, и еще важнее для нас, что он смог передать эти уроки своим читателям.

Содержание книги

Часть I. МОДЕЛЬ ПРЕДМЕТНОЙ ОБЛАСТИ В РАБОТЕ
Глава 1. Переработка знаний
Глава 2. Коммуникация и язык
Глава 3. Связь между моделью и реализацией

Часть II. СТРУКТУРНЫЕ ЭЛЕМЕНТЫ ПРЕДМЕТНООРИЕНТИРОВАННОГО ПРОЕКТИРОВАНИЯ
Глава 4. Изоляция предметной области
Глава 5. Модель, выраженная в программе
Глава 6. Цикл существования объектов модели
Глава 7. Работа с языком: расширенный пример

Часть III. УГЛУБЛЯЮЩИЙ РЕФАКТОРИНГ
Глава 8. Качественный скачок
Глава 9. Перевод неявных понятий в явные
Глава 10. Гибкая архитектура
Глава 11. Применение аналитических шаблонов
Глава 12. Шаблоны и модель
Глава 13. Углубляющий рефакторинг

Часть IV. СТРАТЕГИЧЕСКОЕ ПРОЕКТИРОВАНИЕ
Глава 14. Поддержание целостности модели
Глава 15. Дистилляция
Глава 16. Крупномасштабная структура
Глава 17. Объединение стратегических подходов

Заключение
Приложение. Использование шаблонов в этой книге
Глоссарий
Список литературы
Фотографии


Об авторе


Отзывы

Лаптев Егор  [18 April 2016]
Автор очень витиеват и многословен. Рекомендую к прочтению только в силу постоянного цитирования и отсылок к этой книге. В качестве альтернативы лучше ознакомиться с кратким вариантом этой книги - Domain Driven Design Quickly. Для ознакомления с идеями и практического применения DDD лучше почитать Patterns, Principles, and Practices of Domain-Driven Design, желательно на английском, ибо переводчики подчас слишком искажают смысл написанного.

Последние поступления в рубрике "Операционные системы: общие вопросы, администрирование, программирование"



Введение в тестирование программного обеспечения. Руководство Введение в тестирование программного обеспечения. Руководство Тамре Л.

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

Наука о данных. Учебный курс Наука о данных. Учебный курс Скиена С.С.

Для того чтобы понять мир, необходимо собрать и проанализировать данные о нем. Объединение последних технологических тенденций предоставляет новые возможности для применения анализа данных к более сложным задачам, чем когда-либо прежде. Емкость......

Паттерны Kubernetes. Шаблоны разработки собственных облачных приложений Паттерны Kubernetes. Шаблоны разработки собственных облачных приложений Хасс Р., Ибрам Б.

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

Если Вы задавались вопросами "где найти книгу в интернете?", "где купить книгу?" и "в каком книжном интернет-магазине нужная книга стоит дешевле?", то наш сайт именно для Вас. На сайте книжной поисковой системы Книгопоиск Вы можете узнать наличие книги Эванс Э., Предметно-ориентированное проектирование (DDD): структуризация сложных программных систем в интернет-магазинах. Также Вы можете перейти на страницу понравившегося интернет-магазина и купить книгу на сайте магазина. Учтите, что стоимость товара и его наличие в нашей поисковой системе и на сайте интернет-магазина книг может отличаться, в виду задержки обновления информации.