Хорошие примеры для разработки домена


300

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

Так что, находясь в покое с этими проблемами, кто-нибудь знает о хороших рабочих образцах кода, которые хорошо подходят для моделирования базовых концепций DDD?

Особенно интересуют

  • Показательным домен Модель
  • Хранилища
  • Использование услуг/Application Domain
  • Значение объектов
  • Агрегатные Корни

Я знаю, я Вероятно, просят слишком много, но ything близко поможет.

+28

IHMO такие дебаты помогут. Иногда более простой вопрос. Например. мы могли бы изменить это в вопросе: «Где я могу найти хорошие примеры для DDD?» и он работает с форматом Q & A. 10 окт. 142014-10-10 07:30:44

+26

Это всегда забавно, когда большие выстрелы набирают и закрывают вопросы, такие как это, когда они явно очень популярны, и поэтому, безусловно, очень помогают остальным из нас, которые их голосуют. Я думаю, они популярны, потому что они * конструктивны. Отойди от своих высоких лошадей, ребята. 02 апр. 152015-04-02 08:14:11

+12

Глядя на всю тему, это было дружелюбно, конструктивно, а «вероятные споры, аргументы» и т. Д. Никогда не сбывались. Педантичный и юридический. Бо Перссон, кошка, Джим Гаррисон, Стефан Стейнгагар и Дак-Маэстро имеют слишком много времени на своих руках. 03 апр. 152015-04-03 15:48:44

  0

http://sellandbuy.codeplex.com/ 01 май. 152015-05-01 13:30:18

+1

Я нашел пример «гибкого управленческого проекта» из книги Вона Вернона очень поучительным. он иллюстрирует практическую реализацию перечисленных вами строительных блоков, а также работу с различными ограниченными контекстами, вы можете найти здесь код: https://github.com/VaughnVernon/IDDD_Samples 02 июн. 152015-06-02 19:25:31

+19

Еще раз, еще один пример, как stackoverflow не знает как справляться с хорошими вопросами ... 20 июн. 152015-06-20 03:08:04

+9

Все вопросы, которые были закрыты для того, чтобы не быть конструктивными в отношении SO, которые я видел до сих пор, были полной противоположностью этому. Все имеют более 100 голосов и были одинаково любимы одинаково :) 29 сен. 152015-09-29 13:44:49

+3

Это как википедия и удаленные статьи. Неужели мы сделали сайт лучше, закрыв популярный четырехлетний вопрос? 27 окт. 152015-10-27 13:55:36

  0

Я бы порекомендовал этот пример: https://github.com/vkhorikov/DddInAction 21 июл. 162016-07-21 21:09:46

159

Сложность с образцами DDD заключается в том, что они часто являются очень специфичными для домена, а техническая реализация результирующей системы не всегда показывает проектные решения и переходы, которые были сделаны при моделировании домена, который действительно находится в ядре DDD. DDD гораздо больше относится к процессу, чем коду. (как утверждают некоторые, лучшим примером DDD является сама книга!)

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

Вы не указали, какой язык вы используете, но я дам вам несколько в нескольких различных языках:

DDDSample - образец Java, что отражает примеры Эрик Эванс говорит о том, в his book. Это хорошо прокомментировано и показывает ряд различных методов решения различных задач с отдельными ограниченными контекстами (т. Е. Уровнем представления). Он активно работает, поэтому регулярно проверяйте его на наличие обновлений.

dddps - # приложение Тим Маккарти образец C для его книги, .NET Домен-Driven Design с C#

S#arp Architecture - прагматичный C# пример, а не как «чистый» а DDD подход, возможно, из-за его отсутствия реальной проблема с доменом, но все же хороший чистый подход.

Со всеми этими образцовыми приложениями, вероятно, лучше всего проверить последние версии транков из SVN/что угодно, чтобы действительно получить представление о шаблонах мышления и технологии, поскольку они должны регулярно обновляться.

+1

Очки хорошо приняты. Спасибо, Майкл. Они должны хотя бы помочь мне визуализировать некоторые возможности реализации. Я понимаю, что вы говорите об этом процессе, и я согласен. Спасибо, что ответили на это! 13 фев. 092009-02-13 04:23:36

  0

Как упоминалось @Mehdi в оригинальном вопросительном комментарии, вы должны добавить замечательный пример из Vaughn Vernon. Это лучшая реализация DDD-шаблона, который я когда-либо видел: github.com/VaughnVernon/IDDD_Samples 25 мар. 172017-03-25 14:13:12

  0

Я знаю, что это старо, но пример из 'dddps', похоже, полностью анемичен и встречается с ООП на самом деле. Ни один из объектов домена не имеет никакого поведения, а классы уровня обслуживания в основном представляют собой делегирование 1: 1 в репозитории. Я не уверен, следует ли считать это «хорошим» примером DDD? Я все еще изучаю себя, но образцы в архитектуре S # arp кажутся лучшим примером для тех, кто изучает DDD, поскольку он охватывает как состояние, так и поведение, что является хорошим дизайном ООП. 21 янв. 182018-01-21 17:56:39

  0

Теперь вы должны добавить отличный образец Vaugnh Vernon, автор проекта «Реализованный доменный дизайн» (IDDD): https: // github.com/VaughnVernon/IDDD_Samples 24 янв. 182018-01-24 12:12:40


22
проектов

Не источника в сказать, но я наткнулся на Parleys.com, который имеет несколько хороших видео, которые охватывают DDD хорошо (требуется вспышка):

Я нашел эти гораздо более полезными, чем почти несуществующие примеры DDD, которые в настоящее время доступны.

  0

Те выглядят отлично. Большой вклад! Спасибо. 13 фев. 092009-02-13 23:35:36

+1

лет, ссылки не работают ... 04 янв. 112011-01-04 06:02:17

+6

Обновление ссылок: «Улучшение дизайна приложений с использованием богатой модели домена» http://www.parleys.com/#sl=1&st=5&id=148 и «Получить объекты ценности в порядке для Domain Driven Design "http://parleys.com/#sl=1&st=5&id=172 10 мар. 112011-03-10 02:14:50

  0

Даже эти выше прокомментированные ссылки не работают. !!! 04 фев. 182018-02-04 09:03:20


1

Time and Money, хотя он оставляет желать лучшего.

  0

почему вам это не нравится? что вы подразумеваете под большим желанием в этом примере кода? особенности, которые вам не нравятся? 04 янв. 112011-01-04 05:56:29


3

Code Camp Server, Jeffrey Palermo's образец кода для книги ASP.NET MVC in Action. Хотя книга ориентирована на уровень презентации, приложение моделируется с использованием DDD.


10

.NET DDD Пример из домена Driven Design книги Эрика Эванса можно найти здесь: http://dddsamplenet.codeplex.com

Приветствия,

Якуб G


10

Заканчивать Project Silk. Он не только демонстрирует DDD, но и другие режущие кромки. Это отличный ресурс для любого веб-разработчика. Полный обзор проекта можно найти на странице MSDN.

  0

Исходный код недоступен :( 02 янв. 182018-01-02 11:26:03


5

Это хороший пример, основанный на управляемом доменом дизайне и объясняет, почему важно иметь отдельный доменный уровень.
Microsoft spain - DDD N Layer Architecture

  0

Я не могу проголосовать за это, но зайдите в блог Айенде, чтобы понять, почему он считает, что это не очень хороший пример. Http://ayende.com/blog/19457/review-microsoft-n слойной-приложение-образец-часть-я 01 мар. 132013-03-01 07:08:32


5

ddd-cqrs-sample также является хорошим ресурсом. Написано Java, Spring и JPA.