- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章 面向对象的方法1.ppt
第5章 面向对象的方法 Object - Oriented Methodology;面向对象的分析和设计方法;面向对象技术发展-总结;目录;5.1面向对象方法概述;结构化分析(SA)阶段的任务是:在可行性分析的基础上,进一步了解确定用户需求,准确地回答“系统必须做什么?”的问题,获得需求规格说明书。描述方法为DFD 图、数据词典及加工小说明。
结构化设计(SD)阶段的任务是:将分析阶段获得的需求说明转换为计算机中可实现的系统,完成系统的结构设计,包括数据结构和程序结构,最后得到软件设计说明书。描述方式:模块图、流程图及PAD 图等。
结构化程序设计(SP)阶段的任务是:根据软件设计,选择程序设计语言,编码实现具有良好风格的软件系统。;2、瀑布模型的缺点:僵化
瀑布模型要求:生命周期各阶段间遵守严格的顺序。
实际情况是:软件开发往往在反复实践中完成。
瀑布模型要求:预先定义并“冻结”软件需求。
实际情况是:某些系统的需求的一个逐渐明确的过程,且预先定义的需求到软件完成时可能已经过时。; 本质上是功能分解,以实现功能的过程为中心,而用户的需求变化主要是针对功能的。这就使基于过程的设计不易被理解;且功能变化往往引起结构变化较大,稳定性不好。
系统有明确的边界定义,且系统结构依赖于系统边界的定义,这样的系统不易扩充和修改。
数据与操作分开处理,可能造成软构件对具体应用环境的依赖,可重用性(reusability)较差.;需求分析;杭 州; ? 特点:尽可能模拟人类习惯的思维方式,即问题域与求解域在结构上尽可能一致。与传统方法相反,OOM以数据或信息为主线,把数据和处理结合构成统一体 —— 对象。这时程序不再是一系列工作在数据上的函数集合,而是相互协作又彼此独立的对象的集合。;OOM:以object 为核心,强调对现实概念的模拟而不强调算法。“面向对象方法学的基本原则,是按照人们习惯的思维方式建立问题域的模型,开发出尽可能直观、自然地表现求解方法的软件系统”。? 类Class:由特殊到一般的归纳(induction)? 继承Inheritance:由一般到特殊的演绎(deduction);OOM:以object模拟实体,需求变化不会引起结构的整体变化,因为实体相对稳定,故系统也相应稳定。;稳定性好:软件功能需求的变化不牵动全局,只需局部修改;
Class 独立性强:只要修改不涉及class的对外接口,则内部修改完全不影响外部调用;
Inheritance和多态性(polymorphism)使其很容易被修改和扩充;
容易理解;
容易测试、调试。;注:OOM并不是减少了开发时间,而是通过提高可重用性、可维护性,进行扩充和修改的容易程度等,从长远角度改进了软件的质量。OOM与原型结合使用效果好。;传统方法;三、面向对象基本概念;对象;类;面向对象概念:类vs.对象(1);类vs.对象(2);消息;消息;封装;继承;面向对象概念:单继承;面向对象概念:多继承;多态性;又称为分类结构,由一组具有“一般-特殊”关系(继承关系)的类构成。是一个以类为结点,以继承关系为边的连通有向图。;又称组装结构,有两种:
⑴ 一个部分对象只隶属于惟一的整体对象。部分与整体对象同时存在。
⑵ 一个部分对象可属于多个整体对象。部分与整体对象之间的的关系比较松散。;实例连接和消息连接;四、面向对象方法的内容;;(1)面向对象分析;OO 分析模型;(2)面向对象设计;面向对象设计的主要工作分为两个阶段:高层设计和类设计。
高层设计构造应用软件的总体模型。
类设计建立类的规格说明,包括类的实例可执行的操作和它们的数据表示。
三个可能的利用现有类的方向:
现有类的复用
从现有类进行演化
从废弃型进行开发;面向对象设计( OOD );将 OO 分析模型转换到 OO 设计模型;(3)面向对象编程;(4)面向对象的测试;(5)面向对象的软件维护;五. 面向对象的开发方法;对象层
结构层
主题层
属性层
服务层; Booch方法的开发模型包括静态模型和动态模型,静态模型分为逻辑模型和物理模型,描述了系统的构成和结构,动态模型分为状态图和时序图。
该方法对每一步都作了详细的描述,描述手段丰富、灵活。不仅建立了开发方法,还提出了设计人员的技术要求,不同开发阶段的资源人力配制。; ; 对象图由对象和消息组成;⑶ 状态图; ⑸模块图;B.Coad 与 Yourdon 的分析与设计;; Coad 与 Yourdon 的设计模型;;对象模型化技术的三类模型:对象模型、动态模型和功能模型。
这个模型化的过程是一个迭代过程通过不断更新、细化,直到切合系统真正需求为止。。;面向对象建模 Ob
文档评论(0)