有朋友问用domain model来设计的架构,怎么分层,每层中放什么,我觉得可以用一个很简单的原则来回答这个问题,虽然并不一定完备正确:
1、和表现,和页面相关的,都是Presentation层的
2、是做基础架构的,比如对Hibernate的封装,对Lucence的封装的,放到Infrastructure之中
3、和业务沾一点边的,全部放Domain之中
4、把所有的表现,基础架构,业务挤出去之后,剩下的就是Application层的
5、实践中,Application层的职责主要是接口的转换(Adapt),以及会话逻辑(事务等)
基本上按照这5点原则,不难确定每层中都放什么
1、和表现,和页面相关的,都是Presentation层的
2、是做基础架构的,比如对Hibernate的封装,对Lucence的封装的,放到Infrastructure之中
3、和业务沾一点边的,全部放Domain之中
4、把所有的表现,基础架构,业务挤出去之后,剩下的就是Application层的
5、实践中,Application层的职责主要是接口的转换(Adapt),以及会话逻辑(事务等)
基本上按照这5点原则,不难确定每层中都放什么
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步