开发者社区 > 云原生 > 正文

代码层面上各层的实现职责有哪几方面?

代码层面上各层的实现职责有哪几方面?

展开
收起
vncamyi27xznk 2021-12-06 10:26:02 740 0
1 条回答
写回答
取消 提交回答
  • 1.接口层:该层包含与其他系统进行交互的接口与通信设施,在多数应用里,该层可能提供包括 Web Services、RMI 或 Rest 等在内的一种或多种通信接口,该层主要由 Facade、DTO 和 Assembler 三类组件构成; 2.应用层:Application 层包含的组件就是 Service,在领域驱动设计的架构里,Service 的组织粒度和接口设计依据与传统 Transaction Script 风格的 Service 是一致的,但是两者的实现却有着质的区别,TransactionScript 风格的 Service 是实现业务逻辑的主要场所,因此往往非常厚重;而在领域驱动设计的架构里,Application 是非常“薄”的一层,所有的 Service 只负责协调并委派业务逻辑给领域对象进行处理,其本身不真正实现业务逻辑,绝大部分的业务逻辑都由领域对象承载和实现了,这是区别系统是 Transaction Script 架构还是 Domain Model 架构的重要标志; 3.领域层:Domain 层是整个系统的核心层,该层维护一个使用面向对象技术实现的领域模型,几乎全部的业务逻辑会在该层实现,Domain 层包含 Entity(实体)、ValueObject(值对象)、Domain Event(领域事件)和 Repository(仓储)等多种重要的领域组件; 4.基础设施层:作为基础设施层,Infrastructure 为 Interfaces、Application 和 Domain 三层提供支撑,所有与具体平台、框架相关的实现会在 Infrastructure 中提供,避免三层特别是 Domain 层掺杂进这些实现,从而“污染”领域模型,Infrastructure 中最常见的一类设施是对象持久化的具体实现。

    答复内容摘自《云原生技术与架构实践年货小红书》,这本电子书收录开发者藏经阁 下载连接:https://developer.aliyun.com/topic/download?id=1127

    2021-12-06 15:06:50
    赞同 展开评论 打赏
问答地址:

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

相关电子书

更多
LOCKet:安全源于独立 立即下载
安全,源于独立 立即下载
典型业务逻辑漏洞挖掘 立即下载