第8章面向对象设计面向对象设计(Object-OrientedDesign,OOD):面向对象的设计(OOD)就在是面向对象分析(OOA)模型基础上运用面向对象方法进行系统设计,目标是产生一个符合具体实现条件的OOD模型
面向对象设计的任务:(1)系统设计:确定实现系统的策略和目标系统的高层结构
把紧密相关的类、关系等设计元素包装成子系统
(2)对象(类)的设计:对每个类的属性和操作进行详细的设计;确定解空间中类、关联、接口的形式;确定实现操作的算法
1面向对象设计的准则8
2软件重用8
3面向对象设计模型和设计过程8
4设计问题域部分8
5人机交互界面的设计8
6设计任务管理部分8
7设计数据管理部分8
8设计类中的服务8
9关联的实现8
10整体—部分结构的实现第7、8章思考题1.模块化:对象是组成系统的基本模块;对象把数据结构和作用在数据上的操作封装起来构成模块
2.抽象:规格说明抽象:类是一种抽象数据类型(包含相似对象的共同属性和服务,定义了对外的公共接口)参数化抽象:当描述类的规格说明时并不具体指定所要操作的数据类型,而是把数据类型作为参数(例如:C++中的类模板)4
弱耦合:耦合:不同对象之间相互关联的紧密程度(1)交互耦合:指对象之间的耦合通过消息连接来实现
交互耦合应尽可能松散,即尽量降低消息连接的复杂程度(如应该尽量减少消息中包含的参数个数,降低参数的复杂程度等)(2)继承耦合:继承是父类与子类之间耦合的一种形式父类与子类彼此之间应该结合得越紧密越好,为获得紧密的继承耦合,在设计时应该使子类尽量多继承和使用其父类的属性和服务
信息隐藏:对象是属性和服务的封装体,实现了信息隐藏类结构分离了接口与实现,支持了信息隐藏5.强内聚:面向对象设计中的三种内聚①服务内聚:一个服务仅完成一个功能②类内聚:尽量设计功能单一的类(类的属性和服务