四层架构设计

图 9

传统的三层架构实际上我们能够很明显的发现,我们的数据库将会做为架构起点,我们会从数据库层面开始分析以及设计,但是我们的DDD他的重点其实不在数据库,而是在领域模型,我们会将领域模型做为我们的分析基点,向上进行衍生。进而进行分层设计。

  1. User Interface,用户界面层,负责向用户显示信息和解释用户命令。

    1. 业务/界面接口

    2. 对外的model

  2. Application为应用层,定义软件要完成的任务,并且指挥表达领域概念的对象来解决问题。

    1. 线程调度

    2. 应用服务

    3. 与实体无关的业务逻辑

  3. Domain领域层,或者说是模型层。负责表达业务概念,业务状态信息以及业务规则,也就是我们的领域模型。

    1. 业务概念抽象

    2. 业务规则

    3. 领域模型

  4. Infrastructure基础设施层,应用层传递消息,为领域层提供持久化机制,为用户界面层绘制屏幕组件,等等。基础设施层还能够通过架构框架来支持四个层次间的交互模式。

    1. 交互层次,可以被任何层调用

    2. 提供持久化机制

    3. 为用户界面提供基础绘制组件

严格分层架构和松散分层架构

四层架构设计是松散分层架构,其上层可以直接访问下面的任何一层:UserIntefce可以直接访问Domain,任何一层可以直接访问Infrastructure层。相反的,严格分层架构,其上层只能访问与之仅连的一层,不可以跨层访问。

四层架构代码结构对照表

最后更新于

这有帮助吗?