(4) 选择对象与类的原则
��・ 对象应该 具有记忆其自身状态的能力。而且对象的属性应当是系统所关心的,或是系统正常运行所必需的。
��・ 对象应当具有有意义的服务(操作),可用以修改对象本身的状态(属性值)。而且对象可以利用其服务为系统中的其它对象提供外部服务。如果类不需提供任何服务,则此类或对象可不必包含在分析模型中。
��・ 对象应当具有多个有意义的属性。仅有一个属性的对象最好表示为其他对象的属性。
��・ 为对象定义的属性应适合于对象的所有实例。如果对象的某一个实例不具备某属性,则意味着应用论域中存在尚未发现的继承关系。应该利用继承关系将原来的对象和特殊的实例区分为两个对象。
��・ 为对象定义的有关服务应适合于对象的所有实例。
��・ 一个类中应当有一个以上的实例:如果一个类中只要一个实例或对象,那么有可能这个类没有存在的必要。但如果一个类虽然只有一个实例,但它反映的应用论域的某一种概念,那么它必须作为一个类存在。
��・ 对象应是软件分析模型的必要成分,与设计和实现方法无关。
��・ 有时为了提高执行速度,需要增加一些类或对象或属性,用以保存另一些类或对象产生的暂时结果,以避免重复计算。但这应是设计阶段考虑的问题,不应是分析阶段做的事。
��在面向对象的分析活动中,对对象的识别和筛选取决于应用问题及其背景。也取决于分析员的主观思维。
��
|