![]() |
1
9
我想说的是,从域模型的角度来看,值是否可配置是无关紧要的——重要的是它是外部定义的。
这样的类有效地保护了不变量:Name不能为null。领域模型必须像这样封装不变量,而不考虑哪个消费者将使用它们——否则,它们将无法满足灵活设计的目标。 但您询问了默认值。如果名称有一个好的默认值,那么如何将该默认值传递给MyClass。
对于MyClass,我们可以定义IMyClassFactory接口:
现在,您可以定义一个从配置文件中提取名称的实现:
确保需要MyClass实例的代码使用IMyClassFactory来创建它,而不是手动新建它。 |
![]() |
Tony Raimo · 域实体是否应该调用存储库? 7 年前 |
![]() |
Seb · DDD只读存储库返回“值对象” 7 年前 |
![]() |
tlt · 使用嵌套对象和大集合进行聚合根优化 7 年前 |
![]() |
PatrickSJ · DDD,状态对象/值对象 7 年前 |
![]() |
msmani · DDD更改聚合根id 7 年前 |
![]() |
DuskMcDusk · 逻辑和性能中的聚合根冲突 7 年前 |