第7章面向对象的设计探究.ppt

问题域部分的设计 ? 把多继承的层次结构平铺为单继承的层次结构,如图所示。这意味着该泛化关系在设计中就不再那么清晰了。同时某些属性和服务在特化类中重复出现,造成冗余。 问题域部分的设计 2) 针对无继承语言的调整。 编程语言中的继承属性提供了表达问题域的一般化∕特殊化语义的语法,它明确地表示了公共属性和服务,还为通过可扩展性而达到可复用性提供了基础。 然而,由于开发组织方面的原因,有些项目最终选择了不支持继承性的编程语言。对于一个不支持继承的编程语言来说,只能将每一个泛化关系的层次展开,成为一组类及对象,之后再使用命名惯例将它们组合在一起。 问题域部分的设计 (6) 改进性能 提高执行效率是系统设计的目标之一。为以提高效率有时必须改变问题域的结构。 1) 如果类之间经常需要传送大量消息,可合并相关的类,使得通信成为对象内的通信,而不是对象之间的通信,或者使用全局数据作用域,打破封装的原则,以减少消息传递引起的速度损失。 2) 增加某些属性到原来的类中,或增加低层的类,以保存暂时结果,避免每次都要重复计算造成速度损失。 问题域部分的设计 (7) 存储对象 通常的作法是,每个对象将自己传送给数据管理部分,让数据管理部分来存储对象本身。 人机交互部分的设计 用户界面设计步骤 (1) 从系统的输入、输出及与用户的交互中获得信息,定义界面对象和行为(操作

文档评论(0)

1亿VIP精品文档

相关文档