面向对象泛型讲述.ppt

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

书籍推荐 已出版 未出版(等待出版中) 第六讲 面向对象范型 6.1 软件危机与开发方法 软件开发面临的问题 软件费用上升,硬件费用下降 软件开发周期越来越长,维护费用增加 软件错误频繁,硬件错误几乎不存在 结构化开发方法缺少灵活性(80年代) 调查结果 软件开发各阶段的费用比例 阶段 % 需求 3 设计 8 编程 7 测试 15 维护 67 纠正软件错误的开销 阶段 引入错误% 发现错误% 纠错费用% 需求 55 18 5 设计 30 10 25 编程 10 50 60 维护 5 22 用户的需求 解决方案 满足功能需求 使用迅速变化的业务环境 满足运行时(时间与空间)的约束 软件需求 可维护 按预计的资源(时间/空间/物力/人力)开发 设计满足发展的需求 软件开发方法的发展 结构化分析与设计 功能分解、逐步求精 难以适应功能变化的需求 实体关系模型 基于稳定的数据实体 忽略了功能需求的管理 面向对象方法 功能抽象 + 数据抽象 程序设计范型的发展 范型 理论、标准和方法的集合 表示一种组织知识的方式 各种程序设计范型 过程型:C、Pascal、Cobol、Ada 逻辑程序设计:Prolog 函数式程序设计:ML、Haskel 面向对象程序设计:Smalltalk, C++, Java, C# 抽象机制的发展 函数与过程抽象 支持功能分解;全局命名空间;不支持信息隐蔽 模块化 一组函数 + 相关数据;支持全局和局部命名空间 抽象数据类型 模块化 + 实例;支持自定义的类型 面向对象范型 以抽象数据类型为基础,支持类定义和实例化 面向对象建模过程 (系统分析过程) 分析系统的典型使用过程,建立使用案例的模型 分析系统功能和数据组织,确认对象及其相互关系,建立静态模型 分析使用案例中,对象之间的交互关系,建立动态模型 在软件体系结构设计、模块设计、程序设计等各个阶段,逐步细化静态模型和动态模型。 建模方法的运用 针对应用特征,可以选择不同的建模方法 在系统设计、详细设计阶段仍可以选择OO方法 应用特征 建模方法 数据库应用 实体/关系模型 管理信息系统 结构化方法 人机交互、通信代理 状态图 专家系统 基于规则的方法 复杂系统 面向对象方法 6.2 UML 引论 Unified Modeling Language 三位前驱: Grady Booch (Booch方法的创始人) Jim Rumbaugh (OMT方法的创始人) Ivar Jacobson (OOSE方法的创始人) 目标 为面向对象软件设计提供统一的、标准的、可视化的建模语言 标准化进程 Object Management Group(OMG) 征集标准化建模语言的提案 Rational 公司 提出 UML 语言 提供支撑环境产品 Rose 支持 UML 的公司 Microsoft、HP、Oracle、Texas UML的应用(1/2) 需求分析 用使用案例图描述客户需求,系统外部功能建模 系统分析(问题域建模) 系统结构:类图、对象图 系统行为:协作图、状态图、序列图、活动图 系统设计(系统框架建模) 逻辑框架:细化问题域模型 界面设计、数据设计 物理框架:构件图、发布图 UML的应用(2/2) 系统实现 对象设计:从系统框架 ? 程序结构 可复用构件、可复用系统框架 系统测试 单元测试:测试类(基于类图) 结合测试:测试协作关系(基于构件图和协作图) 系统测试:测试系统功能(基于使用案例图) 思考题 4-1:面向对象技术为解决软件危机提供了哪些手段? 4-2:在软件系统的设计中,UML语言的作用是什么? 6.3 一个软件的问题陈述 交互式图形编辑系统 用于创建、编辑、浏览图形 图形由直线、矩形、椭圆和文本组成 约束条件 提供可视化编辑手段 可浏览多个图形 不考虑图形的保存和装入 界面设计 新建 下图 删除 删图 新建直线 新建矩形 新建椭圆 新建文本 人机交互设计 菜单设计 新建: 创建新图形 下图: 显示下一图形 删图: 删除当前图形 删除: 删除当前图元 新建直线: 创建新的直线 新建矩形: 创建新的矩形 新建椭圆: 创建新的椭圆 新建文本: 创建新的文本 编辑图元的方法 可用光标选择一个图元 选中图元的点、边或内部 当前图元上显示出控制点 (如:直线的首尾、矩形的四角) 图元的编辑 通过拉动图元的控制点 激活文本编辑 新建图元的方法 由一组菜单项控制 必威体育精装版创建的图元为当前图元 新建文本 鼠标指定文本起点,光标变为 I 形 新建直线、矩形、椭圆 鼠标按下指定起点(或左上角) 光标变为十字形 鼠标释放指定终点(或右下角) 交互式图形编辑系统的设计问题 如何表示系统的外部功能(用途)? 如何表示系统的组织结构? 如何表示系统的工作流程?

文档评论(0)

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

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

1亿VIP精品文档

相关文档