DDD "Модуль" в С#.NET

В книге Evans DDD он говорит о разделении концепций в домене с помощью "модулей". Термин "модуль" может перевести на несколько разных вещей в разработке программного обеспечения, как концептуальных, так и конкретных, поэтому мне интересно, как бы эта концепция модулей DDD была выражена в системе С#.NET и если есть прямая корреляция с другие использования термина "модуль" в разработке программного обеспечения (например, Эванс упоминает, что некоторые разработчики выражают DDD-модули как пакеты Java, которые, я думаю, будут аналогичны сборкам .NET).

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

Спасибо!

т

Ответ 1

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

Лично я поклонник использования реальных проектов, а позже, если количество DLL когда-либо возникает, чтобы сконденсировать его с использованием ILMerge в моих производственных сборках, конечно, мое решение составляет всего около 30 ~ проектов на данный момент.