Пространства имен

Стандартная схема именования

При построении программных комплексов используя подход микросервисов в сочетании с DDD позволяет уменьшить общую сложность и упростить разработку путем разделения всей комплексной задачи на отдельные небольшие подзадачи называемые в DDD подходе поддоменами или ограниченными контекстами (bounded context). Для упрощения реализации каждого такого микросервиса предлагается к использованию общий подход к наименованию пространств имен в приложении реализующим микросервис на .NET.

DDD Namespaces

Шаблоны пространств имен

System — имя программного комплекса
Context — ограниченный контекст (subdomain)

Преметная область (Domain Layer)

[System].[Context].Entitiesсущности реализующие логику предметной области

Слой приложения (Application Layer)

[System].[Context].Servicesинтерфейсы сервисов
[System].[Context].ServicesImplреализация сервисов
[System].[Context].Adaptersинтерфейсы адаптеров
[System].[Context].UnitTestsмодульные тесты сущностей и сервисов

Инфраструктура (Infrastructure Layer)

[System].[Context].AdaptersImplреализация адаптеров
[System].WebApi.Controllersконтроллеры API
[System].WebApiприложение объединяющее в себе сервисы, адаптеры и контроллеры
[System].Testsприложение с интеграционными и компонентными тестами

Суфиксы для именования адаптеров

-Repository
-Adapter
-Store
-Db