- 1、本文档共25页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象设计 设计是把分析阶段得到的需求转变成符合成本和质量要求的、抽象的系统实现方案的过程。 面向对象设计可再细分为系统设计和对象设计。系统设计确定实现系统的策略和目标系统的高层结构。对象设计确定解空间中的类、关联、接口形式及实现服务的算法。 面向对象设计的准则 模块化:对象就是模块 对象就是模块,它是把数据结构和操作这些数据的方法紧密地结合在一起所构成的模块。 抽象:面向对象方法不仅支持过程抽象,而且支持数据抽象。类实际上是一种抽象数据类型。它对外开放的公共接口构成了类的规格说明。这种接口规定了外界可以使用的合法操作,使用者通过这些操作使用类中定义的数据。 某些面向对象的程序设计语言还支持参数化抽象,即当描述类的规格说明时并不具体指定所要操作的数据类型,而是把数据类型作为参数。 信息隐藏:属性的表示方法和操作的实现算法 在面向对象方法中,信息隐藏通过对象的封装性实现:类结构分离了接口与实现,从而支持了信息隐藏。 弱耦合:松散交互耦合、紧密继承耦合 交互耦合:指对象之间的耦合通过消息连接来实现。交互耦合应尽可能松散: 尽量降低消息连接的复杂程度。 减少对象发送(接受)的消息数。 继承耦合:继承是一般化类与特殊类之间耦合的一种形式,应该提高继承耦合程度。设计时应使特殊类尽量多继承并使用其一般化类的属性和服务。 强内聚: 面向对象设计中存在3种内聚: 服务内聚:一个服务应该完成且仅完成一个功能。 类内聚:一个类应只有一个用途,类的属性和服务应全都是完成该类对象的任务所必须的,其中不包含无用的属性或服务。 一般-特殊内聚:设计出的一般-特殊结构,应该符合多数人的概念,即应是对相应的领域知识的正确抽取。 可重用:软件重用是提高软件开发生产率和目标系统质量的重要途径。 尽量使用已有的类。 如果确实需要创建新类,则在设计这些新类时,应该考虑将来可重用性。 启发规则(一) 设计结果应该清晰易懂 用词一致 使用已有的协议 减少消息模式的数目 避免模糊的定义 一般-特殊结构的深度应适当: 不能仅从方便编码的角度出发随意创建派生类,一个中等规模(大约包含100个类)的系统中,类等级层次数应保持为7±2。 启发规则(二) 设计简单的类:便于开发和管理 避免包含过多的属性 有明确的定义 尽量简化对象之间的合作关系 不要提供太多服务 使用简单的协议:减少消息中的参数 使用简单的服务 把设计变动减至最小 *11.3 软件重用(一) 概念 重用:也叫再用或复用,是指同一事物不作修改或稍加改动就多次重复使用。包括知识重用、方法和标准的重用、软件成分的重用3个层次。 多态重用 利用多态性不仅可以使对象的对外接口更加一般化(基类与派生类的许多对外接口是相同的),从而降低了消息连接的复杂程度,而且还提供了一种简便可靠的软构件组合机制。系统运行时,根据接收消息的对象类型,由多态性机制启动正确的方法,去响应一个一般化的消息,从而简化了消息界面和软构件连接过程。 11.4 系统分解 采用面向对象方法设计软件系统时,面向对象设计模型(即求解域的对象模型),与面向对象分析模型(即问题域的对象模型)一样,也由主题、类与对象、结构、属性、服务等5个层次组成。 大多数系统的面向对象设计模型,在逻辑上都由四大部分组成,这四大部分对应于组成目标系统的四个子系统,它们分别是问题域子系统、人-机交互子系统、任务管理子系统和数据管理子系统。 图11.2 典型的面向对象设计模型 在面向对象分析中,只涉及到问题论域部分,其余3部分是在面向对象设计中加进来的。 设计问题域子系统(一) 面向对象设计通常仅需从实现角度对问题域模型作一些补充或修改,主要是增添、合并或分解类--对象、属性及服务,调整继承关系等。 调整需求:修改分析结果,再把修改反映到问题域子系统中 重用已有的类: 把问题域类组合在一起:引入一个根类把应用的类关联到一起,建立类的层次 增添一般化类以建立协议:在一般类中定义所有特殊类都可使用的操作,这种操作可能是虚函数,其细节在特殊类中定义。 调整继承层次:若设计语言不提供多重继承机制,需修改分析结果。 设计人-机交互子系统(一) 确定人机交互的细节,其中包括指定窗口和报表的形式、设计命令层次等项内容。 设计人-机交互子系统的策略 分类用户 描述用户 设计命令层次:用过程抽象机制组织起来的、可供选用的服务的表现形式。 设计人-机交互类 * *
您可能关注的文档
- 倾斜分层下行垮落采煤法教学教材.ppt
- 清查摸底细则及说明教学教材.pptx
- 清代文学-精品课件教学教材.ppt
- 清单模式下工程造价管理教学教材.ppt
- 清妃VI品牌整合设计提案教学教材.ppt
- 清华大学热能工程教学课件-第4章_过热器和再热器教学教材.ppt
- 清华大学唐龙教授谈毕业设计教学教材.ppt
- 清华大学运筹学2对偶理论教学教材.pptx
- 清华施汉昌讲座-废水生物处理的数值模拟研究教学教材.ppt
- 软件(金融)2-基于安卓的大学生记账管理系统的设计与实现-答辩汇报教学教材.ppt
- 《航空运输服务质量评价指标体系构建与智能化提升路径探索》教学研究课题报告.docx
- 初中环境教育:校园昆虫生态保护实践与可持续发展研究教学研究课题报告.docx
- 小学语文写作教学中学生写作心理素质的培养研究教学研究课题报告.docx
- 2025年中国焊缝清理液数据监测报告.docx
- 2025年交通出行服务行业智能交通系统成本效益分析报告.docx
- 《钢铁企业节能减排技术改造与产业竞争力提升研究》教学研究课题报告.docx
- 基于2025年数据洞察的跨境电商本土化成功模式研究报告.docx
- 2025年职业教育虚拟仿真实训系统在体育场馆管理行业的实践案例报告.docx
- 2025年交通出行服务行业绿色出行策略研究报告.docx
- 2025年交通大数据在冷链物流调度中的应用案例分析.docx
最近下载
- 2023ESC急性冠脉综合征管理指南(完整版).pdf
- 2025美国急性冠脉综合征(ACS)患者管理指南解读课件PPT.pptx
- 《设计小房子》教案-2024-2025学年教科版(2024)小学科学二年级上册.docx VIP
- 《夜晚的月亮》教案-2024-2025学年教科版(2024)小学科学二年级上册.docx VIP
- 1.4设计小房子 课件 2024新教科版科学二年级上册.ppt
- DELTA台达垂直多关节机器人手持式教导器 DTV 系列操作手册.pdf VIP
- 医院常见传染病感染防控的管理要点.pdf
- 2.7夜晚的月亮 课件 2024新教科版科学二年级上册.ppt
- 华成多轴机械手控制系统说明书培训资料.pdf
- 小学奥数教师版(合辑)1-1-2-3 分数四则混合运算综合.pdf VIP
文档评论(0)