三层架构设计

MVC模式

MVC的缺陷:

  1. 导致代码部分层级冗余:Controller层往往会出现大量冗余代码

  2. 对于控制器依赖过重:Controller会与业务逻辑层直接交互,代码围绕Controller编写,很难设计领域对象模型,让Controller和Service形成高度耦合

  3. 对象之间耦合:

  4. 不符合OO思想:因为Spring的原有,所有的动态化操作都被赋予到业务逻辑层中,而角色模型只有getter和setter,季度不符合DDD的设计思想以及面向对象的思想

  5. MVC固化了业务,本身DDD的设计应该针对角色行为的设计,而MVC是一种结构化的设计

DCI模式

DCI(Data-对象数据,Context-对象场景,InterAction-交互行为)是对三层架构MVC模式的补充:

  1. 【D】Data Object,贫血模型,只有一些getter、setter,代表角色动作所需要的数据

  2. 【I】Role Object,角色对象,描述并且只有角色的行为

  3. 【C】Context则负责上下文交互,以及场景整合

该种方式很契合DDD的思想。

最后更新于