三层架构设计
最后更新于
这有帮助吗?
最后更新于
这有帮助吗?
MVC的缺陷:
导致代码部分层级冗余:Controller层往往会出现大量冗余代码
对于控制器依赖过重:Controller会与业务逻辑层直接交互,代码围绕Controller编写,很难设计领域对象模型,让Controller和Service形成高度耦合
对象之间耦合:
不符合OO思想:因为Spring的原有,所有的动态化操作都被赋予到业务逻辑层中,而角色模型只有getter和setter,季度不符合DDD的设计思想以及面向对象的思想
MVC固化了业务,本身DDD的设计应该针对角色行为的设计,而MVC是一种结构化的设计
DCI(Data-对象数据,Context-对象场景,InterAction-交互行为)是对三层架构MVC模式的补充:
【D】Data Object,贫血模型,只有一些getter、setter,代表角色动作所需要的数据
【I】Role Object,角色对象,描述并且只有角色的行为
【C】Context则负责上下文交互,以及场景整合
该种方式很契合DDD的思想。