背景
实体能否处于非法状态吗?如果实体只承担其作为实体的职责,我不认为实体可以处于非法状态,如果您将实体在不同的分层之间传递,如:UI->Application->Domain-Data,那么这种情况实体承担的角色就当多了(职责过重),在这种情况下是允许处于非法状态的,也可以这么说:某个类型的实体角色是不能处于非法状态的,如同这个类型还承担其它角色,是可以处于非法状态的。
参考文章
- 。
- 。
- 。
- 。
如果业务上规定所有的非法数据都可以“暂存”,咋办?
金蝶的标准单据状态机
这里没有给出:前置条件和后置条件,重点说一下“暂存”状态,处于暂存状态的单据是可以随意“临时保存”的,不进行任何验证,类似“草稿”。
之前看过一本DDD相关的书籍,名字记不起来了,书上说:一切数据都可以"临时保存",应该是这个意思。
备注
今天准备实现金蝶的这种状态机模式,再说一句题外话,金蝶貌似是用的MDA,模型一旦建立好,UI和数据库都可以自动生成,然后针对适当的扩展点做扩展就行了,有在金蝶做开发的朋友,可以说说啊。