Существуют ли какие-либо проекты с открытым исходным кодом, использующие DDD (Domain Driven Design)?[закрыто]

StackOverflow https://stackoverflow.com/questions/152120

Вопрос

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

Есть ли хорошие примеры проектов, использующих DDD в мире открытого исходного кода?

Это было полезно?

Решение

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

http://dddsample.sourceforge.net/

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

Другие советы

Я не уверен, насколько он полон, но я нашел Образец НДДД в Google Code.

Я удивлен, что никто не упомянул Макто, Образец DDD Айенде.Самое важное в Macto — это то, что процесс мышления перед фактическим кодированием представлен в виде серия постов.DDD – это не реализация модели, а моделирование бизнес-домена.Решения типа «некоторая концепция является совокупным корневым объектом/сущностью/значением» гораздо важнее, чем то, как будет сохраняться AR.

Также я бы порекомендовал видеоролики Уди Дахана о SOA и CQRS, которые могут обеспечить лучший контекст для применения DDD.

Это не проект с открытым исходным кодом, но все же это пример кода: http://www.codeplex.com/dddpds

Пример использован в книге Доменно-ориентированное проектирование .NET с использованием C#:Проблема-Дизайн-Решение


Выдуманный пример, который кажется многообещающим, но мог бы умереть:http://www.codeplex.com/domaindrivendesign

Боюсь, что http://www.codeplex.com/domaindrivendesign действительно умер, но если кто-то заинтересован в том, чтобы внести свой вклад, не стесняйтесь обращаться ко мне.

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

http://kigg.codeplex.com/ для меня хороший пример.

Я знаю, что это не C#, но это мета-фреймворк Java, который следует подходу, управляемому доменом:Я мало что знаю об этом, но я готов изучить это в ближайшем будущем: Рома Рамочная программа

http://sellandbuy.codeplex.com/

еще один проект ДДД

Хорошее чтение — книга Джимми Нильссона (и блог, если уж на то пошло).Применение доменно-ориентированного дизайна

Это смесь книг Эванса и Фаулера (Доменно-ориентированный дизайн - Эванс), и (Шаблоны архитектуры корпоративных приложений - Фаулер)

Я сам ими не пользовался, но некоторые инструменты упомянуты на странице DDD в Википедии.Однако большинство из них, похоже, реализовано на Java.

http://en.wikipedia.org/wiki/Domain-driven_design#Software_tools_to_support_domain-driven_design

Хорошо, я нашел это, но это Java, а не C#:
http://timeandmoney.domainlanguage.com/

Сервер Code Camp, Джеффри Палермо пример кода для книги ASP.NET MVC в действии имеет открытый исходный код и использует DDD.

(То же, что и мой ответ в Хорошие примеры предметно-ориентированного дизайна)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top