【教学课件】第六章面向对象的设计.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《【教学课件】第六章面向对象的设计.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第六章面向对象的设计.ppt(88页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第六章 面向对象的设计n面向对象的设计模型面向对象的设计模型n系统设计系统设计n对象设计对象设计n领域对象设计领域对象设计面向对象设计的任务面向对象设计的任务n面向对象设计的任务面向对象设计的任务 n系统设计 n系统整体结构的设计 n对象设计 n对OOA模型中类/对象模型的具体化和细化 n消息设计 n从对象-关系模型,设计出消息模型 n设计模型复审面向对象设计责任设计消息设计类及对象设计子系统设计属性、操作、协作者对象-行为模型对象-关系模型类/对象模型使用实例系统设计过程 划分子系统;确定需要并发运行的子系统并为它们分配处理器;描述子系统之间的通信;确定系统资源的管理和控制;确定人机交互构件
2、;选择实现数据管理和任务管理的基本策略。四种主要子系统n问题域子系统n人机交互子系统n任务管理子系统n数据管理子系统划分子系统n划分原则n模块化、功能独立、信息隐藏n同一个子系统的类拥有共同特性n同一个子系统的类具有共同目的n同一个子系统的类提供相似服务n同一个子系统的类间相对高耦合n子系统标准n有明确的借口,与其他子系统通信n一般类只和子系统内部的其它类协作处理并发操作n并发的对象(子系统)n同时n异步n作用于同一事件n处理n将并发子系统分配到不同处理器n将并发子系统分配到同一处理器n系统提供同步控制描述子系统间的通信n子系统协作模型n客户/服务器n端对端请求客户子系统contract服务器
3、子系统peersubsystempeersubsystem请求请求人机交互设计n分类分析用户特点,设计不同界面n增加用户界面专用的类和对象n利用快速原型演示,改进界面设计任务管理设计n策略n确定任务的特征n定义一个协调者任务和与之关联的对象n集成其它任务和协调者n步骤n识别由事件驱动和时间驱动的任务n识别关键性任务、任务优先级和任务管理类n定义任务n必要时扩充有关任务的类和对象数据管理设计n解决对象数据的存储和检索n数据管理设计n定义数据格式n与所使用的数据存储管理模式相关n设计相应的操作n说明对象及所属类和对象如何存储自己对象设计对象设计 设计模型对象数据结构算法消息传递控制分析模型类属性方
4、法关系行为对象描述n对象描述n协议描述:一组消息和对消息的注释 n实现描述:对对象接收到某个消息后所执行的操作的实现细节的描述 n算法设计 n程序构件与接口 n对象间的接口和对象的整体结构 领域对象的设计n设计目的支持软件复用n设计内容n调整需求n复用已有的组件n引入父类,分组管理领域类n添加一般化类以建立协议n调整OOA模型n设计复审n设计模板第七章 统一建模语言UMLnUML简介n静态建模n动态建模n物理架构建模nRUPUMLnUnified Modeling Languagen近10年来OOSE最重要的成果n贡献者:Grady Booch,Ivar Jacobson,Jin Rumbau
5、ghn中文网站nhttp:/UML的组成nUML的模型元素n表示模型中的某个概念n表示模型元素之间的关系nUML的元模型结构n元元模型层n元模型层n模型层n用户模型层nUML模型UML模型n图n静态图n动态图n视图n用例视图n逻辑视图n并发视图n构件视图n部署视图UML的特点n统一标准n面向对象n表达能力强大n可视化UML的应用n用于描述系统开发的不同类型于不同阶段n从需求分析到软件设计到软件测试及维护n可视化问题描述,帮助理解问题n帮助建立各阶段的文档n获取和交流有关应用问题求解的知识n辅助构建系统静态建模n用例模型n用例图表示n从最终用户的角度描述系统功能n类和对象模型n类图和对象图表示类
6、图ClassDiagram学生姓名:string学号:string书书名:string价格:real1购买0.*属于对象图ObjectDiagram王平:学生姓名:王平学号:020106英语:书书名:英语价格:26.5数学:书书名:数学价格:21.8对象间关系n关联关系(Association)n聚集关系(Aggregation)n泛化关系(Generalization)n依赖关系(Dependency)n细化关系(Refinement)包图子系统A子系统D子系统B子系统C子系统E子系统F动态建模n状态图(StateDiagram)n时序图(SequenceDiagram)n协作图(Colla
7、borationDiagram)n活动图(ActivityDiagram)消息同步消息异步消息简单消息状态图StateDiagram超时到达上楼上楼到达上楼到达在底楼向上移动向底楼移动向下移动空闲打印机就绪打印文件时序图(SequenceDiagram)打印机忙保存文件打印文件打印文件计算机打印服务器打印队列计算机协作图(CollaborationDiagram)打印机忙保存文件打印机就绪打印文件打印文件计算机打印队列打印服务器打印机活动图ActivityDiagramDiskfreeDiskfull显示磁盘满显示在打印删去显示信息建立打印文件Win.printAll()printer.pri
8、nt()物理架构建模n逻辑架构和物理架构n逻辑架构n物理架构n构件图n配置图RUP基于UML的统一建模过程第八章 编码和语言选择编码和语言选择 n编码的目的编码的目的n编码的风格编码的风格n编码使用的语言编码使用的语言编码的目的 编码模块的过程性描述一一一源程序(不可执行的)(可执行的)n 编码的过程n熟悉所选语言的功能和程序开发环境 n仔细阅读设计文档详细设计 n弄清要编码的模块的外部接口与内部过程 编码的风格n追求“聪明”和“技巧”-提倡“简明”和“直接”n使用标准的控制结构 n清晰的前提下求取效率 n.Make it right before you make it faster.n.M
9、ake it clear before you make it faster.n.Keep it right when you make it faster.n(求快不忘保持程序正确)n.Keep it simple to make it faster.n(保持程序简单以求快)n.dont sacrifice clarity for“efficiency”.n(书写清楚,不要为“效率”牺牲清楚)源程序的文档化(code documentation)n有意义的变量名称n适当的注释n标准的书写格式n用分层缩进的写法显示嵌套结构的层次;n在注释段的周围加上边框;n在注释段与程序段、以及不同程序段之间
10、插入空行;n每行只写一条语句;n书写表达式时,适当使用空格或圆括号等作隔离符;程序设计语言的发展面向机器的语言高级语言(第3代)甚高级语言机器语言(第1代)汇编语言(第2代)结构语言基础语言面向对象语言第4代语言语言的选择n选择编码语言的标准 n应用领域 n算法与计算复杂性 n数据结构的复杂性 n效率的考虑 适用各类应用领域的语言 年代应用领域主要语言其他语言20世 纪 60年代商业COBOLAssembler科学计算FORTRANALGOL、BASIC、APL系统AssemblerForth人工智能LISPSNOBOL现代商业COBOL、C+、Java、电子表格C、PL/1科学计算FORTR
11、AN、C、C+JavaBASIC系统C、C+、JavaAda、Modula人工智能LISP、Prolog第九章 软件测试 n测试的基本概念 n黑盒测试 n白盒测试 n测试用例设计 n多模块程序的测试策略 n面向对象系统的测试 测试的基本概念测试的基本概念 n测试(testing)的目的与任务 n目的:发现程序的错误 n任务:通过执行程序,暴露潜在的错误 n纠错(debugging)的目的与任务 n目的:定位和纠正错误 n任务:消除软件故障,保证程序的可靠运行 测试的特性测试的特性 n挑剔性 n抱着为证明程序有错的目的去测试 n复杂性 n设计合适的测试用例 n不彻底性 nDijkstra 一句名
12、言:“程序测试只能证明错误的存在,但不能证明错误不存在”n经济性测试的种类测试的种类 n静态分析(不执行程序)n静态分析器n代码复审(Code Review)n动态分析(执行程序)n黑盒测试n测试程序功能n白盒测试n测试程序结构测试的文档测试的文档 n测试计划 n测试项目的名称n各项测试的目的、步骤和进度n测试用例的设计 n测试报告n测试项目名称n实测结果与期望结果的比较n发现的问题n测试达到的效果 黑盒测试黑盒测试 n等价分类法等价分类法(equivalence partitioning)n把输入数据的可能值划分为若干等价类 n有效等价类和无效等价类n每一无效等价类至少需要一个测试用例 n例
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学课件 教学 课件 第六 面向 对象 设计
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内