目录
定义
每个实体是唯一的,并且可以相当长的一段时间内持续的变化。我们可以对实体做多次修改,故一个实体对象可能和他之前的状态大不相同,但是由于他们拥有相同的身份标识,他们依然是同一个实体。
一个典型的实体应该包含身份标识、属性和领域行为。强调的是连续性和标识。一句话:实体是具有唯一标识的对象。
实体可以是任何事物,只要满足两个条件即可:
1.它在整个生命周期中具有连续性,
2.它的区别并不是由那些对用户非常重要的属性决定的。
所以实体可以是一个人、一座城市、一辆汽车或者一次银行交易等。
最佳实践
1.【识别属性】首先考虑实体的本质特征,尤其是那些用于识别(唯一标识)、查找或者匹配对象的特征。不要一开始就关注实体的属性和行为,只有在对实体的本质特征有用的情况下,才加入相应的属性和行为。
属性按粒度分为原子属性和组合属性,识别标准:该属性是否存在约束规则、组合因子或属于自己的领域行为。把职责推给组合属性类,避免把类定义的庞大而松散。
2.【挖掘行为】通过对实体相关所有用例的分析,整理出符合统一语言的实体的行为列表。
3.只添加那些对概念至关重要的行为和这些行为所必须的属性。此外,应该将行为和属性转移到与核心实体关联的其他对象中。这些对象中,有些可能是实体,有些可能是值对象。除了标识之外,实体往往通过协调其他关联对象的操作来完成自己的职责。