小编Dan*_*rin的帖子

域模型中的继承vs枚举属性

我在工作中讨论过"域模型中的继承使开发人员生活变得复杂".我是OO程序员,所以我开始寻找在域模型中具有继承性的论据,这样可以简化开发人员的生活,而不是让交换机遍布整个地方.

我想看到的是:

class Animal {

}

class Cat : Animal {

}

class Dog : Animal {

}
Run Code Online (Sandbox Code Playgroud)

另一位同事说的是:

public enum AnimalType {
    Unknown,
    Cat,
    Dog
}

public class Animal {

    public AnimalType Type { get; set; }

}
Run Code Online (Sandbox Code Playgroud)

我如何说服他(链接是欢迎的)一个类层次结构比在这种情况下具有枚举属性更好?

谢谢!

oop inheritance enums domain-driven-design domain-model

36
推荐指数
4
解决办法
6446
查看次数