Возможно ли использование Asp.Net MVC + CSLA + DDD - PullRequest
5 голосов
/ 22 апреля 2009

На днях меня попросили проверить систему, основанную на ASP.NET MVC + CSLA + DDD (проектирование дисков домена). Первая версия этой системы была основана на ASP.NET MVC + CSLA. Второй релиз был основан на том, что плюс добавил DDD. Причина в том, что ..... ну, я не знаю что. Когда я посмотрел на диаграммы двух разных архитектур, стало очевидно, что вторая версия была чрезвычайно сложной. Объекты CSLA в основном использовали объекты Domain. Когда вы видите что-то подобное, вы знаете, что оно уже пахнет, но трудно объяснить, почему кто-то не должен делать это таким образом без A) экстремального знания всех тем или B) использования этого в течение длительного времени. У меня нет ни одного из них для этой темы, но я знаю, что если бы я построил это с нуля, я бы не сделал это таким образом, равно как и многие разработчики, с которыми я связан.

Итак, дорогой читатель, что бы вы сделали в этой ситуации? Я думаю, что если вы хотите использовать CSLA, MVC и DDD, вы делаете ставку и выбираете ту или иную (CSLA или DDD). Если нет, на кухне слишком много поваров.

Пожалуйста, расскажите, если у вас есть мнения по этому вопросу.

Ответы [ 4 ]

4 голосов
/ 22 апреля 2009

Я думаю, что если вы хотите использовать CSLA и MVC и DDD, то вы делаете стенд и выбрал тот или иной (CSLA или DDD). Если вы не слишком много поваров на кухне.

Я склонен согласиться с вами там. Если кто-то хочет сделать DDD с уже очищенной архитектурой, поддерживающей DDD + поддерживающими фреймворками, я бы порекомендовал S # arp Architecture поверх CSLA.

При этом некоторые люди считают, что с помощью CSLA можно взять на себя некоторые аспекты DDD. Очевидно, что пурист DDD, вероятно, съежится от этой перспективы, но вам не нужно быть пуристом, чтобы получить что-то от DDD. У Дерика Бэйли есть интересный блог на эту тему: http://www.avocadosoftware.com/csblogs/dredge/archive/2007/02/19/687.aspx

2 голосов
/ 25 апреля 2009

На мой взгляд, CSLA выстрелила себе в ногу с последней версией. Мнения расходятся, но в моей книге неправильно, когда объект должен знать, ребенок это или нет.

0 голосов
/ 26 октября 2009

Кажется, что некоторые люди там находят, что CSLA и DDD / Alt.Net не являются полностью перекрестными целями.

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

Дополнительная информация:

Использование внедрения зависимостей с CSLA.NET

Использование шаблона репозитория с CSLA.NET

Роки на , почему он стремится создать «прагматичную» структуру

0 голосов
/ 22 апреля 2009

Я не уверен, что CSLA, который из памяти использует подход ActiveRecord, особенно подходит для DDD. Лучше с nHibernate.

...