领域驱动设计-分层架构:LAYERED ARCHITECTURE

2021-08-25  本文已影响0人  东南枝下

要想创建出能够处理复杂任务的程序,需要做到关注点分离——使设计中的每个部分都得到单独的关注。在分离的同时,也需要维持系统内部复杂的交互关系

LAYERED ARCHITECTURE的种类繁多,但是大多数成功的架构使用的都是下面这4个概念层的某种变体。

用户界面层(或表示层) 负责向用户显示信息或解释用户指令(用户可以是另一个计算机系统)。
应用层 定义软件要完成的任务,并指挥表达领域概念的对象来解决问题(这一层负责的工作对业务来说意义重大,也是与其他系统的应用层进行交互的必要渠道)
领域层(或模型层) 负责表达业务概念,业务状态信息以及业务规则(领域层是业务软件的核心,将领域层分离出来才是实现MODEL-DRIVEN DESIGN的关键)
基础设施层 为上面各层提供技术能力:传递消息、持久化、组件等

各层之间相关联
各层之间是松散连接的,层与层的依赖关系只能是单向的。上层可以直接使用或操作下层元素。而如果下层元素需要与上层元素进行通信(不只是回应直接查询),则需要采用另一种通信机制,使用架构模式来连接上下层,如回调模式或OBSERVERS(观察者)模式

上一篇下一篇

猜你喜欢

热点阅读