4 A Standard Object-Oriented Solution
根据第三章的问题描述,如何创建一个信息提取系统对于不同的CAD/CAM系统都可以工作,而且为客户对象提供一致的接口,本章采用OO技术设计了一个初步的解决方案,它虽然可行但是却失去了灵活性。
对于slot(同样适用于其他类型)来说,创建一个SlotFeature类,根据CAD/CAM系统版本的不同再分别为其派生V1Slot与V2Slot类。引入其他类型如cutout,hole等,再创建一个Feature类,让包括SlotFeature在内的所有特征类都从其继承(相关图形见书P63),这种实现方式(并未采用多态的方式,因为不需要改变专家系统而只需要在CAD/CAM系统中添加相应的模块特征类就可以满足需求)能够满足系统的需求,然而这并不是一个好的方案,缺点如下:
1、冗余的方法――即很多方法其实内部实现相似,根本没有必要写这么多方法造成理解繁杂;
2、表现混乱;
3、紧耦合性――由于各个特征类直接关联,造成系统的改变困难;
4、弱内聚性――表现各个核心功能的函数(方法)分布在各个类中。
另外一个严重问题是当系统中加入新的模块时,或者说加入新的版本后,类的数目将大量增加,难以管理,因此本方案绝不是一个令人满意的方案。
探讨了在CAD/CAM系统中使用面向对象技术创建信息提取系统的基本设计方案,旨在为不同版本提供统一接口,但该方案存在冗余、紧耦合等问题。
1356

被折叠的 条评论
为什么被折叠?



