Bootstrap

DDD领域模型设计

一、DDD领域模型设计概念

DDD的全称为Domain-driven Design,即领域驱动设计;
分层架构:UI层、应用层、领域层、基础设施层;
User Interface
负责向用户展现信息,并且会解析用户行为,即常说的展现层。
Application Layer
应用层没有任何的业务逻辑代码,它很简单,它主要为程序提供任务处理。
Domain Layer
这一层包含有关领域的信息,是业务的核心,领域模型的状态都直接或间接(持久化至数据库)存储在这一层。
Infrastructure Layer
为其他层提供底层依赖操作。
层结构的划分是很有必要的,只有清晰的结构,那么最终的领域设计才宜用,比如用户要预定航班,向Application Layer的service发起请求,而后Domain Layler从Infrastructure Layer获取领域对象,校验通过后会更新用户状态,最后再次通过Infratructure Layer持久化到数据库中。
在这里插入图片描述
1、Java动物对象实例

public class Dog {
   
    private int age;
    private String color;
    public int getAge() {
   
        return age;
    } //吃
    public void eat(Object food) {
   
        System.out.println("吃...");
    } //睡
    public void rest() {
   
        System.out.println("睡...");
    }
}

2、贫血模型的例子

public class Dog {
   
    private int age;
    private String color;
    private String status;
    public int getAge() {
   
        return age;
    }
    public void setAge(int age) 
;