赛捷软件论坛's Archiver

joyce.sun 发表于 2016-8-18 13:37

使用类别和继承的深度

与确定关键属性列表一昂,字段需要通用,确定的字段适用于多种类别是很重要的。
例如,如果你正在收集家电购买的信息,你会开始考虑下列类别和字段:
所有类别
洗衣机
真空吸尘器
冰箱
[attach]2600[/attach]
你可以快速识别,每一类有三个相同字段-制造商,价格,和保修期。
相比在每个类别下创建这些字段,您可以创建一个更高层次的父类,称为“家用电器”,而这三个字段与之相关的。然后,当您创建“洗衣机”,“吸尘器”和“冰箱”为子类家电,他们将自动继承三种常见的字段,所有您需要添加到每个子类为每个设备类型模型的关键属性列表:
所有类别
家用电器
洗衣机
真空吸尘器
冰箱
添加字段到父类别,在已创建的子类别不会自动添加新字段到子类别。如果你添加一个字段到父级,然后添加一个新的子类别,子类别将继承现有的和新的字段。
[attach]2599[/attach]
[attach]2601[/attach]
如果你想跟踪几年前展销会出席人数,你可以利用继承的方式如下:
所有类别
展销会出席人数
CEBIT
Softworld
CRM展会
[attach]2602[/attach]
注:关键属性类别没有存储默认值-如果没有选择,不储存-所以“空”复选框无法报告。这就是为什么提出的建议是在这个更灵活的例子使用一个“是”或“否”的选择代替一个复选框场。
然而,一个更灵活的设计如下:
所有类别
展销会出席人数
第一年
第二年
第三年
第四年
[attach]2603[/attach]
这是建议,因为在将来有可能是一个你要跟踪出勤新的展销会。这可以简单地添加当前年度类别,例如,第四年,和所有未来的年。
在不那么聪明的例子,你将为任何新加的类别继承过去的冗余。此外,在不那么聪明的例子,你会预期在未来的许多年来利用继承,而在这个“智能”实例,你可以添加您需要他们的年。

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.