版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、面向对象的概念和原则 Introduction to Object Technology Concepts of Object Orientation标识对象模型元素面向对象软件开发技术面向对象分析(00A)面向对象设计(00D)面向对象实现(OOP) OOA/D中最关键、最基本的能力是熟练地 为软件组织分配职责。 00A强调在问题领域内发现和描述对象或 概念,而不是解决方案。(做正确的事)00D强调的是定义软件对象和这些软件对 象如何协作来满足需求。(正确地做事)00A 面向对象分析不论采用哪种方法开发软件,分析的过程都是提 取系统需求的过程。分析工作主要包括3项内容,这就是理解、表达和 验
2、证。分析过程得出的最重要的文档资料是软件需求规格说明(在面向对象分析中,主要由对象模型、动态模型和功能模型组成)。面向对象分析(00A)的关键:识别出问题域内的类与对象,并分析它们相互间的关系,最终 建立起问题域的简洁、精确、可理解的正确模型。在用面向对象观点建立起的3种模型中,对象模型是最基本、最重要、最核心的。面向对象分析的基本过程面向对象分析,就是抽取和羞理用户腮求并建立问 题域精确 模型的 过程。三个模型.五个层次 3个朕矍:对象栈燮(静恭结构)、动态栈矍(交互次 序)和功能模燮(数据变换)。复杂问题(大矍糸统丿的对象栈燮由5个属次组成三种模型之间的关系三种模型分别从3个不同侧面描述了
3、所要开发的糸统。它们相互补充、相互配合,使得我们对糸统的认识更加全面:功能模型指朗了糸统应该“做什么”;动态模型朗确规定了什么对候(即在何种 状态下接受了什么事件的触发)做;对象模型则定 义了做事情的卖体。在面向对象方法学中,对象模型是最基本最重要的,它为其他两种模型奠定了基础。00A过程概念上:OOA大体上按照下列顺序进行:寻找类与对象,积别结构,枳别主题,定义属性,建久 动态栈型,建立功能楼矍,定义服务。但,正如前面巳经多次强调指出过的,分析不可能严格地按照预定顺序进行,大燮、复杂糸统的栈矍需要反复构造多變才能建成。通常,先构莲岀栈燮的子集,然后再逐淅护克,直到完全、充分地理鮮了整个问题,
4、才能最终把栈燮建立起来。二、需求陈述需求陈述.的内家包括:问题范圆,功能需求,性 能需求,应用环境及假设条件等。恳之,需求陈 述应该阐朗“做什么”而不是“怠样做”。书写需求陈述对,要尽力做到语岀正确,而且应该慎重选用名词、动词、形彖词和同义词。需求陈述可简可幣。及复迭代,还步完整、准确、有败。三、建立对象模型获取容户对OO糸统的需求使用基本的需求作为指引来选择类和对象为每个糸统对象标识属性和操作走艾组织类的结构和层决建适对象一关糸模型1、确定类和对象找出候选的类与对象筛选出正确的类与对象人 储户ATM系统 ATM糸统候选类和对象:银行,ATM,糸统,中央计算机,分行计算机,柜员终端,网络,总
5、行,分行,软件,成采,市,街道,营业厅,储蓄所,柜员,储户, 现全,支票,账户,事务,现全免换卡,余额,滋卡,分行代码,卡 号,用户,副本,传息,密码,类型,取款额,账单,访问。冗余":用户、该卡、副本-储户、现全兑换卡无关:成本、市、街道、營业厅、储蓄所笼统:银行、网络、糸统、软件、信息、访问属性:有些名词卖际上描述的是其他对象的属性,应该 把这些名词从候选类与对象中去掉。当然,如果禁个性质 具有很强的独立性,则应把它作类而不是作为属性。A ATM糸统的例子中,“现全”.“支票”、“取款额”、“账单J “余额 J “分行代码”、“卡号”、 选码”、“类型”等,卖际 上如应该作为属性
6、对待。操作、卖现2、确定关联初步确定关朕进一步完耳 卖例p2382461+总行分行代码分行保管 1 +账户拥有拥有雇用A中央计算机通信A 1 +分行计算机1+柜员修改修改v拥有1+v访问储户通信冇拥!+输入TM员端柜终员务柜事II授权1+现金兑换卡ATM系统原始的类图3. 划分主题4. 确走属性(分析.选择丿5识别继承关糸6、反复修欢修改后的AT M对象模型建立动态模型在开发交互式糸统肘,动态模型却起着很重要的 作用。第一步,是编写典型交互行为的脚本。虽然脚本 中不可能包括毎个偶然事件,但是,至少必须保 证不遗漏常见的交互行为。第二步,从脚本中提取出事件,确定触发毎个事 件的动作对篆以及接受事
7、件的目标对象。第三步,排列事件发生的次序,确定毎个对象可 能有的状态及状态间的转换关糸,并用状态图描 绘它们。最后,比较各个对象的状态图,检查它们之间的 一玫性,确椽事甘之间的匹配。1、编写脚本脚本:糸统在禁一执行期间内出现的一糸列事件。脚本描述用户(或其他外部谏备)与目标糸统之间的一个或多个典型的交互过程,以便对目标糸统的行为有更具体的认帜。编写脚本的目的:是椽证不遗漏重要的交互步骤, 它有助于确徐整个交互过程的正确性的和请晰性。编写脚本:看先编写正常情况的脚本。然后,考 虑特殊情况,最后 考虑出错情况。2、设想用户界面界面对用户是否喜欢、是否接受一个糸统起着很重要的作用。界面中的信息交换方
8、式是非常重要的。谏想用户界面的目的就是确保能够完成全部必要的宿息交换 > 而不丢央重要的信息。3、画事件跟踪图/状态图确定事件与状态 UML顺序图、活动图表示事件活动的过程 UML状态图表示事件与对象状态的关糸储户AIM总行分行储户AIM总行分行-要求密码'输人密码r要求事务类型"输入类型-一要求输入取款额输入取款额-r吐岀现金"请求拿走现金'拿走现金r请求继续此事务"结束- 印账单:退卡-请求拿走卡拿走卡显示主屏幕请求验证账户请求处理事务账户有效事务成功请求分行验证账弓 账户有效"请求处理分行事苕 分行事务成功"ATM正
9、常情况的事件顺序图网络响应中断do/显示取消信息插卡可读的主辟、 do/显示主屏幕;输入密码要求密码1密码错I do/验证账门I插卡不町读的 厂不可读的卡、 do/显示不可读卡 < 信息 J无效账户取消do,退卡;V请求拿力退卡do/显示取消倍息中止取消结束do/打印账单do/显示无效账 户信息do/请求继续现金拿走do/吐出现金;请求拿走现金事务成功账户有效( do/要求类型输人类型 取消 取消额金求要2输人金额(do/处理事务)取 事务 号失败 (do/失敗信息)一ATM取款类的状态图等待5秒种五、建立功能模型/定义服务功能模型蔻朗了糸统中数据之间的依赖关糸, 以及有关的教据处理功能
10、。建立功能模型:数据流图.UML的用例图定义服务00 D 00系统的设计00D设计金字塔00D 00系统的设计尽管分析和谏计的定义有朗显区别,但是在卖 际的轶件开发过程中二者的界限是模糊的。许 多分析结果可以直接映射成设计结果,而在设 计过程中又往往会加深和补充对糸统需求的理 解,从而进一步完善分析结果。因此,分析和 谏计活动是一个多次反复迭代的过程。向对象方法学在概念和蔻示方法上的一致性,保证了在各项开发活动之间的平滑(无缝)过渡,领域专家和开发人员能够比较彖易地跟踪整个糸统开发过程,这是面向对象方法与传统方法比较起来所具有的一犬优势。生命周期方法学把设计进一步划分成总体谏计和 详细谏计两个
11、阶段。面向对象谏计细分为糸统谏计和对象谏计。糸统谏计确定卖现糸统的策略和目标糸统的壽层 结构。对象谏计确定鮮空间中的类、关朕.接口形式及卖现服务的算法。糸统谏计与对象段计之间的界限,比分析与设计之间的界限更模糊。 00D设计一般过程以可卖现的方式描述毎个子糸统对象谏计涓息谏计复审谏计模型并在需要肘迭代对象设计分析系统设计00D设计准则模块化抽象传息隐藏 弱耦合(瓶少交互耦合.増加继承耦合丿 强内聚(服务内聚、类内聚.一般特殊内聚丿可重用00D 系统设计过程划分分析模型并发性和子糸统分配任务管理构件数据管理构件资源管理构件人机界面构件子糸统间通信00D 对象设计过程对象描述莎凤算出和数据结构程序构件和樓DOOP 面向对象实现面向对象实现(OOP)卖现语言基本卖现手段卖现环境(类库、开发工具丿编码调试 测试基本实现手段口类走义对象创建口结构走义实例关联定义 操作调用和请息发送 内存管理封裳多态近年来,面向对象方法学目益受到人们的重视,特 别是卷用这种方出开发大憂轶件*%对,可以把
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 淮阴师范学院《体育舞蹈专项理论与实践(6)》2021-2022学年第一学期期末试卷
- 淮阴师范学院《科学社会主义理论与实践》2022-2023学年第一学期期末试卷
- 淮阴师范学院《工程造价案例分析》2022-2023学年第一学期期末试卷
- 淮阴师范学院《电磁场与电磁波》2021-2022学年期末试卷
- 淮阴工学院《移动平台应用开发》2023-2024学年期末试卷
- 淮阴工学院《外国文学》2022-2023学年第一学期期末试卷
- DB3711-T 157-2024苹果生产社会化服务规范
- 学前教育:安全礼仪不玩餐具教案
- 中地数码集团实习报告
- 合成材料制造中的绿色工艺与生产方式考核试卷
- 部编版小学语文三年级上册基础知识试题含答案(全册)
- S7-1200PLC技术及应用 课件 项目17 步进电机控制
- 2024年中国老年糖尿病诊疗指南解读(2024年版)
- 《生物技术制药》课程介绍与教学大纲
- 第30课 家居收纳技巧 课件 2023-2024学年苏教版初中劳动技术七年级上册
- 2024年福建漳平闽投抽水蓄能有限公司招聘笔试冲刺题(带答案解析)
- 2024中国一汽校园招聘1000+岗位高频考题难、易错点模拟试题(共500题)附带答案详解
- GB/T 19533-2024汽车用压缩天然气钢瓶定期检验与评定
- MH-T 5011-2019民用机场沥青道面施工技术规范
- 安捷伦气相色谱仪原理
- 在线网课学习知道《婺文化英语教程(上海财大浙江学院)》单元测试考核答案
评论
0/150
提交评论