看了传说中的弦哥对园子里.Net项目分层与文件夹结构大全(最佳架子奖,吐槽奖,阴沟翻船奖揭晓),我也来说说我的DDD架构吧,主要是看了微软NlayerApp之后,自己写的一个,以后将会应用到我的项目之中。
架构说明:
0-Modeling and Design
:架构的UML
层次图,我认为每个项目的架构都应该先有UML
图,再是进行具体的代码设计
1-Presentation
:UI层,它的实现是多种的,你可以是B/s
的webpage,web mvc,web api
,也可以是C/s
的winform,wpf
等等
2-Application
:这一层是网络应用层,它可以进行邮件,短信等功能的实现
3-Service
:这一层为DDD分布式业务层,主要用来与Webservice,webapi,wcf
等网络服务进行通讯,它可以由UI
层直接调用
4-Domain
:这是DDD的核心层,位于最底层,其它层需要直接或者间接的引用它,它由业务实体,业务规则和业务规范组成
5-Infrastructure
:这是数据持久化层,主要实现了数据持久化的方式,可以由ORM工具实现,或者ADO实现,或者NOSQL实现
6-Project.Common
:这是功能类库层,主要是对某种公用的功能进行的实现,时日志,缓存,异常等等
7-DLL
:这是第三方类库,可以直接放在这个文件夹里
这就是我的DDD项目的架构,希望大家多多探讨!