软件工程第七讲教案
软件工程第七讲教案
教案首页周次 日期 课时序课题面向对象的分析与设计方法 了解面向对象相关概念;理解面向对象的分析与设计方法教学目的 要 重 难 求 点 点面向对象的分析 面向对象的分析教学过程 设 及 时间分配 计第七章 面向对象的分析与设计方法(2*45‘) 第一节 面向对象方法的基本概念与特征(45‘) 第二节 面向对象的分析(45‘)教学场所 或教学方法 或教学方法 作 业使用 教具课 后 记授课教师1
软件工程第七讲教案
第七章 面向对象的分析与设计方法在软件开发与设计中,对一个系统的认识是一个渐进过程,是在继承了以往 的有关知识的基础上、多次迭代往复并逐步深化而形成的。在这种认识的深 化过程中,既包括了从一般到特殊的演绎,也包括了从特殊到一般的归纳。 而目前用于分析、设计和实现一个系统的过程和方法大部分是瀑布型的,即 后一步是实现前一步所提出的需求, 或者是进一步发展前一步所得出的结果。 因此,当越接近系统设计或实现的后期时,对系统设计或实现的前期的结果 作修改就越困难。同时也只有在系统设计的后期才能发现在前期所形成的一 些差错。而且当这个系统越大、问题越复杂时,由于这种对系统的认识过程 和对系统的设计或实现过程不一致所引起的困扰也就越大。 为了解决上述这个问题,就应使分析、设计和实现一个系统的方法尽可能地 接近认识一个系统的方法,换言之,就是应使描述问题的问题空间和解决问 题的方法空间在结构上尽可能地—致,也就是使分析、设计和实现系统的方 法学原理与认识客观世界的过程尽可能地一致。这就是面向对象方法学的出 发点和所追求的基本原则。 7.1 7.1 面向对象方法的基本概念和特征 面向对象方法已经深入到计算机科学技术的许多领域,由于它所涉及的领域 非常广泛,很难确切而清晰地界定它的作用范围、严格而准确地对它进行定 义。在 20 世纪 80 年代初期以前人们认为:面向对象是一种新兴的程序设计 方法,或者说它是一种新的程序设计范型,其基本思想是使用对象、类、继 承、封装、消息等基本概念来进行程序设计。自 80 年代以来,面向对象方法 已深入到计算机软件领域的几乎所有分支,远远超出了程序设计语言和编程 技术的范畴。同时,面向对象方法也深入到计算机软件以外的一些领域。因 而,说它是一种软件开发方法也不够全面。不过从目前看,面向对象方法最 主要的应用范围仍是软件开发,对软件生命周期的各个阶段(包括分析、设 计、编程、测试与维护),以及它所涉及的各个领域(如人机界面、数据库、 软件复用、形式化方法、CASE 工具等等),都已形成或正在形成面向对象的 理论与技术体系。 7.1.1 面向对象方法概述 面向对象不仅是一些具体的软件开发技术与策略,而且是一整套关于如何看 待软件系统与现实世界的关系,以什么观点来研究问题并进行求解,以及如 何进行系统构造的软件方法学。而面向对象方法是一种运用对象、类、继承、 封装、聚合、消息传送、多态性等概念来构造系统的软件开发方法。 面向对象方法的基本思想是从现实世界中客观存在的事物出发来构造软件系 统,并在系统构造中尽可能运用人类的自然思维方式。开发一个软件是为了 解决某些问题,这些问题所涉及的业务范围称作该软件的问题域。面向对象2
软件工程第七讲教案
方法强调直接以问题域(现实世界)中的事物为中心来思考问题、认识问题, 并根据这些事物的本质特征,把它们抽象地表示为系统中的对象,作为系统 的基本构成单位 ,而不是用一些与现实世界中的事物相差较远,并且没有对 应关系的其它概念来构造系统。可以使系统直接地映射问题域,保持问题域 中事物及其相互关系的本来面貌。另外,软件开发方法应该是与人类在长期 进化过程中形成的各种行之有效的思想方法相适应的思想理论体系。但是, 在某些历史阶段出现的软件开发方法没有从人类的思想宝库中吸取较多的营 养,只是建立在自身独有的概念、符号、规则、策略的基础之上,这说明当 时的软件技术尚处于比较幼稚的时期。 结构化方法采用了许多符合人类思维习惯的原则与策略(如自顶向下、逐步 求精)。面向对象方法更加强调运用人类在日常的逻辑思维中经常采用的思 想方法与原则,例如抽象、分类、继承、聚合、封装等等,这就使得软件开 发者能更有效地思考问题,并以其他人也能看得懂的方式把自己的认识表达 出来。 ( 1)面向对象方法有如下一些主要特点: ·从问题域中客观存在的事物出发来构造软件系统,用对象作为对这些事物 的抽象表示,并以此作为系统的基本构成单位。 ·事物的静态特征(即可以用一些数据来表达的特征)用对象的属性表示, 事物的动态特征(即事物的行为)用对象的服务(或操作)表示。 ·对象的属性与服务结合为一个独立的实体,对外屏蔽其内部细节 ,称作封 装。 ·把具有相同属性和相同服务的对象归为一类,类是这些对象的抽象描述, 每个对象是它的类的一个实例。 ·通过在不同程度上运用抽象的原则,可以得到较一般的类和较特殊的类。 特殊类继承一般类的属性与服务,面向对象方法支持对这种继承关系的描述 与实现,从而简化系统的构造过程及其文档。 ·复杂的对象可以用简单的对象作为其构成部分 ,称作聚合。 ·对象之间通过消息进行通信,以实现对象之间的动态联系。 ·通过关联表达对象之间的静态关系。 总结以上几点可以看出,在用面向对象方法开发的系统中,以类的形式进行 描述并通过对类的引用而创建的对象是系统的基本构成单位。这些对象对应 着问题域中的各个事物, 它们属性与服务刻画了事物的静态特征和动态特征。 对象类之间的继承关系、聚合关系、消息和关联如实地表达了问题域中事物 之间实际存在的各种关系。因此,无论是系统的构成成分,还是通过这些成 分之间的关系而体现的系统结构,都可直接地映射成问题域。 ( 2)对于面向对象的定义如下:3
软件工程第七讲教案
一种使用对象(它将属性与操作封装为一体)、消息传送、类、继承、多态 和动态绑定来开发问题域模型之解的范型。 一种基于对象、类、实例和继承等概念的技术。 用对象作为建模的原子。 面向对象的软件工程( 7.1.2 面向对象的软件工程( OOSE ) 1 .采用软件工程学的必要 随着编程语言由低级向高级的发展,它与自然语言之间的鸿沟在逐渐变窄。 开发人员从对问题域产生正确的认识,到用一种编程语言把这些认识描述出 来所付出的劳动 ,由机器代替人完成的工作则增多,如图 7-1 所示。图 7-1 计算机语言发展趋势 在图 7-1 中,编程语言到计算机之间的深色阴影表示这部分工作是由机器自 动完成的,基本不需要开发人员花费精力。自然语言和编程语言中间的空白 区域表示语言的鸿沟, 它表明从人们借助自然语言对问题域有一个正确认识, 到用一种编程语言正确地表达出来,其间所存在的差距。开发人员需要在这 区域做大量的工作,并且容易发生错误。而面向对象的语言使这条鸿沟变窄, 但仍有一些距离。自然语言与问题域之间的浅色阴影表明:虽然人们借助自 然语言来认识和理解问题域属于人类的日常思维活动,不存在语言的鸿沟, 但是不能说这一区域已经不存在问题。问题主要表现在:(1)虽然几乎人人 都会运用自然语言,但不一定都能正确地认识客观世界,因为需要具有正确 的思维方法。(2)在软件开发过程中,要求人们对问题域的理解,比人们日 常生活中对它的理解更深刻、更准确,这需要许多以软件专业 …… 此处隐藏:16158字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [高中教育]电子线路高频非线性部分2.1
- [高中教育]中班美术活动——我的小手
- [高中教育]常用三极管参数大全
- [高中教育]计算机常见故障及解决办法
- [高中教育]风机基础环水平度控制方法探讨
- [高中教育]机械安全工程(专升本)阶段性作业3
- [高中教育]2009年安徽省高考语文考试说明刍议
- [高中教育]unit5 let's eat公开课教案设
- [高中教育]计算机网络原理课后习题答案
- [高中教育]2016-2022年中国新能源市场研究与投资
- [高中教育]2015-2020年中国会议行业市场评估及投
- [高中教育]经销商大会峰会主持人串词开场白
- [高中教育]2014新版北师大数学三年级上册小熊购物
- [高中教育]七年级第一学期体育与健康全套教案
- [高中教育]第三章:国际金融市场
- [高中教育]六年级下册数学单元测试-2.比例 北师大
- [高中教育]2016年上海海事大学法学院624刑法之《
- [高中教育]中国碳化钙产业竞争现状及未来五年投资
- [高中教育]网络时代,我们怎么玩
- [高中教育]圆锥曲线——高中数学基础知识与典型例
- 高集医院世界艾滋病宣传日活动方案
- 苏教版六年级英语上册期末试卷含答案
- 全民枪战生化英雄模式幽灵怎么玩 生化
- 灿烂的宋元文化一导学案
- 第2章货币资金与应收款项
- 北师大版八年级下册数学第三章《分式》
- 浅析高分子材料成型加工技术
- 华南理工大学2013年度共青团先进集体及
- 教师资格科目二小学教案模板(共合集)
- 工程扩建可研报告
- 中华人民共和国海事局2014年度招录公务
- 提高农村小学生作文能力的教学尝试
- 徒手心肺复苏术操作步骤
- 毛概试题库7-15章
- 2014-2015学年度(上)初中班主任工作计
- 企业驾驶员安全生产责任书
- 第07章 不等式测试题-2016年高考文科数
- 医疗器械经营企业工作程序
- 考研英语必背36篇_彩版_精华
- 初中9月13-15假期作业 (1)




