实体类设计有关key的一些想法

在实体类中一般都有一个key来引用这个实体,在具体设计中,这个key对实体设计是有一定影响的。

基本上key分为对人有意义和对人无意义。

对人有意义的key值应该由用户输入,或者从其他地方得到。对人无意义的key应该由系统生成,一般为uuid或者流水号,这里有一个值得注意的地方,即使无意义的key是系统范围唯一的,也不应该作为数据库的主键。

对于一个实体,一个key可以标识它,而这个实体其他部分可以根据语义做一定的聚合然后和key关联起来。

举个例子,对一个商品建模,有一个key标识它,对于商品物理方面的属性,我们可以定义一个类,包括商品的重量,体积,等等,对于商品商业方面的属性,我们可以定义一个类,包括商品的成本,价格等等。当然以上的类中都包括一个字段即商品key。

这样的话,当客户端查询一个实体时,只需要得到这个实体一部分的属性即可,降低了一些后台开销,传递的东西也都是客户感兴趣的东西。

大家以为如何。

你可能感兴趣的:(key)