《Object-Oriented Programming(二).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象编程(下) 面向对象编程(下) 软件开发的阶段及目的 面向对象分析的三种模型 面向对象分析 面向对象设计 设计模式 软件开发的 经典阶段 需求 分析 设计 规范 实现 测试 部署 维护 软件开发阶段的目的 需求阶段 什么是我们的上下文 要达到什么目的? 分析阶段 要处理什么实体? 如何确保有正确的实体? 系统设计阶段 如何解决问题? 需要那些硬件和软件 规范阶段 那些规则控制着系统组件之间的接口? 可以去除模糊,确保正确吗? 软件开发阶段的目的 实现阶段 如何编写符合规范要求的组件? 如何编写高质量,高效率的代码? 测试阶段 完成的系统满足要求吗? 系统是否有安全性问题? 部署阶段 系统管理员必须做什么? 如何培训最终用户? 维护阶段 可以找出和更正错误吗? 可以改进系统吗? 面向对象分析 面向对象分析的关键,是识别出问题域内的对象,并分析它们相互间的关系,最终建立起问题域的简洁、精确、可理解的正确模型。 面向对象方法最基本的原则,是按照人们习惯的思维方式,用面向对象观点建立问题域的模型,开发出尽可能自然地表现求解方法的软件。 面向对象分析 用面向对象方法开发软件,通常需要建立三种形式的模型: 对象模型:描述系统数据结构 动态模型:描述系统控制结构 功能模型:描述系统功能 对象模型 什么是对象模型 对象模型表示静态的、结构化的系统的“数据”性质。 对象模型是对模拟客观世界实体的对象以及对象彼此间的关系的映射,描述了系统的静态结构。 为了建立对象模型,需要定义一组图形符号,并且规定一组组织这些符号以表示特定语义的规则。 需要用适当的建模语言来表达模型,建模语言由记号和使用记号的规则组成。 对象模型的图形符号 类的图形符号为长方形,长方形分成上、中、下3个区域(下面两个区域可选),3个区域分别放类的名字、属性和服务, 对象模型的图形符号 定义属性 UML描述属性的语法格式如下: 可见性 属性名: 类型名=初值{性质串} 属性的可见性有3种: 公有的(public) (+) 私有的(private) (-) 保护的(protected) (#) 如果未声明可见性,则该属性的可见性尚未定义。注意,没有默认的可见性。类型名表示该属性的数据类型,它可以是基本数据类型,也可以是用户自定义的类型。 类图的基本符号 定义服务 服务也就是操作,UML描述操作的语法格式: 可见性 操作名(参数表): 返回值类型{性质串} 操作可见性的定义方法与属性相同。参数表是用逗号分隔的形式参数的序列。描述一个参数的语法如下: 参数名: 类型名=默认值 对象模型 结构的图形符号 结构表示了问题域中的复杂关系,是对客观世界实体相互间关系的抽象。 结构与目标系统的任务直接相关,目标系统的任务决定了系统的结构。 结构有三种形式:归纳关系、组合关系、关联关系 对象模型 归纳关系 即“一般-特殊”关系,它反映了一个类与若干个互不相容的子类之间的分类关系。 高层类(即基类)说明一般性的属性 低层类(即派生类)说明特殊属性,继承高层类中定义的属性和服务。 对象模型 表示归纳关系的图形符号 对象模型 组合关系 组合关系即“整体-部分”关系,反映了对象之间的构成关系。也称为聚集关系。 结构线每端标出的数值(或值的范围),表示在此结构中该端对象的数量(当值为1时无须标出) 组合关系具有传递性:如果A是B的一部分,B是C的一部分,则A是C的一部分。 当组合关系具有多个层次时,可以用一棵简单的聚集树来表示。 对象模型 表示组合关系的图形符号 对象模型 关联关系 关联关系反映对象之前相互依赖、相互作用的关系。 两个对象之间关联关系一般有三种类型: 一对一(1:1) 一对多(1:M) 多对多(M:N) 对象模型 二元关联关系的讨论 表示符号 通过连线,表示两个对象之间的关联关系 连线上的数字,表示参与关联对象的个数 对象模型 消息连接 消息连接反映了一个对象对另一个对象的处理依赖性。 通常一个对象为了完成自己的任务,需要借助于另一个对象提供的服务。 动态模型 什么是动态模型 动态模型表示瞬时的、行为化的系统的“控制”性质,规定了对象模型中对象的合法变化序列。即对象的动态行为。 用状态图来描绘对象的状态、触发状态转换的事件、以及对象的行为(对事件的响应)。 每个类的动态行为用一张状态图来描绘,各个类的状态图通过共享事件合并起来,从而构成系统的动态模型。 动态模型 表示方法 功能模型 什么是功能模型 功能模型表示变化的系统的“功能”性质,它指明了系统应该“做什么”,故更直接反映了用户对目标系统的需求。 表示方法 功能模型也通常由一组数据流程图表示。 在面向对象方法中,数据流程图没有在结构化分析中重要,有时可以省略。 三种模型之间的关系 三种

文档评论(0)

maxianhui + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档