uml面向对象建模与设计

2025-05-23 10:20:17
推荐回答(1个)
回答(1):

  领域模型的行为设计是面向对象领域建模设计的重要部分。

在没有设计的朴素的情况下,领域模型一般是一个数据对象(DTO等),其中只有setter/getter方法,是一种纯粹的数据结构,然后将很多数据结构的算法操作设计在Service等专门接口类中。这样,数据对象作为服务接口方法的参数传入,在服务的方法中被加工。如下代码:

  //失血模型 贫血模型
public class A{
private int id;
...//只有setId(int id) 和getId()方法
}
public class AServiceImp implements AService{
//失血模型作为方法参数传入,被操作
public void createA(A a){
...
}

}
而DDD领域驱动设计告知我们要注重领域模型的业务方法设计,领域模型=数据结构+操作方法,才是一个完整的真正对象,也才能够真正发挥对象封装的作用。

但是一个模型对象可能有很多方法,哪些方法应该作为对象本身的方法?哪些方法又应该依赖其他对象进行?举例:

public class A{

//对象本身独立行为
public void thisIsMyMethod(){
....
}

//依赖其他对象的交互行为
public void replyOthers(B b){
b.xxxx();
..
}

}