网站大量收购独家精品文档,联系QQ:2885784924

面向对象软件工程解析.ppt

  1. 1、本文档共114页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象软件工程解析

第十五讲 本讲的主要内容 一、开发模式(Paradigm) 二、面向对象基本概念 三、面向对象方法的开发过程 一、开发模式(Paradigm) 开发模式又称为范型、范例、风范或模式(Pattern)。开发模式定义了 特定问题和应用的开发过程中将遵循的步骤; 确定将用于表示问题和解的那些成分的类型; 利用这些成分表示与问题解决有关的抽象; 直接得到问题的结构。 开发模式的选择影响到整个软件开发生存期。就是说,它支配了 设计方法 编码语言 测试和检验技术 的选择。 软件开发方法学应给出的主要内容是概念与表示、过程与工具 面向过程开发模式 面向过程开发模式产生过程的抽象。 这些抽象的基础是把软件视为处理流,并定义成由一系列步骤构成的算法。 每一步骤都是带有预定输入和特定输出的一个过程,把这些步骤串联在一起可产生合理的稳定的贯通于整个程序的控制流,最终产生一个简单的具有静态结构的体系结构。 面向过程开发模式的特点 过程性开发模式侧重建立构成问题解决的处理流。 数据抽象、数据结构根据算法步骤的要求开发,它贯穿于过程,提供过程所要求操作的信息。 系统的状态是一组全局变量,这组全局变量保存状态的值,把它们从一个过程传送到另一个过程。 (1)Initialize system; (2)Create and draw interface; while QUIT not selected do (3)case Mouse event: create shape structure; read mouse movements for data; store newly created shape on list of shape records; KeyPress event: if key = q then exit loop; else ignore; Expose event: refresh display by drawing each shape structure; (4)Shut down system; 传统的结构化技术的缺点 系统稳定性差。功能分解实质是围绕实现一个个处理功能的“过程”来构造系统,一旦需求稍有变化,就会引起系统结构的大变化。 难以修改和扩充。SA、SD技术清楚地定义了目标系统的边界,软件通过界面与客观世界通信。 数据和操作分离和模块化的任意性使得软件可重用性差。 僵化的瀑布模型 某些类型的系统需求是模糊的 项目参与者之间存在通信鸿沟 预先定义的需求可能是过时的 面向对象开发模式 在面向过程开发模式中优先考虑的是过程抽象,在面向对象开发模式中优先考虑的是实体(问题论域的对象)。 在面向对象开发模式中,把标识和模型化问题论域中的主要实体做为系统开发的起点,主要考虑对象的行为而不是必须执行的一系列动作。 面向对象分析方法的基本思想之一是基于问题领域的成分来构造一个模块。 面向对象开发模式的特点 面向对象系统中的对象是数据抽象与过程抽象的综合。 系统的状态保存在各个数据抽象的所定义的数据存储中。 控制流包含在各个数据抽象中的操作内。 在面向对象体系结构,消息从一个对象传送到另一个对象。算法被分布到各种实体中。 面向对象方法学的优点 与人类所习惯的思维方法一致。 稳定性好,控制变化性 客观世界中,实体结构相对稳定 减弱“语义断层”,更好的刻画问题域,减少了映射误差 便于复用 可维护性好,易于理解、测试、调试等。 消除或减少了软件开发各个阶段的鸿沟,适应于大型软件产品的开发。 人们认识世界的三个构造法则 认识和区分对象及其属性。 认识和区分整体对象及其组成部分。 认识和区分不同对象类的形成。 OO方法正好适应了以上法则 对数据和操作封装而形成一个统一体; 问题空间和解空间得到进一步的“拟合”,它们的结构十分一致;解空间中的对象行为更丰富,削弱了“语义断层”。 Tendency for Change when Using OO Paradigm (Jacobson et al. 1995) Characteristics of OO Representation Identity—name, reference, handle Abstraction Classification Encapsulation Inheritance Polymorphism Persistence Characteristics of OO Development Pro

文档评论(0)

4477704 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档