高中信息技术 第2章 程序设计基础课件 沪教版选修1
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
21
2.3.2 面向对象方法的基本概念 (续)
• 5.多态性
– 不同的对象收到同一消息可以产生完全不同的 结构,这一现象叫做多态性 – 优点:灵活性、可重用性、可扩充性。
22
典型考题分析
23
2.4 典型考题分析
• 【例2-1】从程序设计方法和技术的发程序 角度来说,程序设计主要经历了结构化设 计和_____的程序设计阶段。 • 答案 面向对象
17
2.3.2 面向对象方法的基本概念 (续)
• 对象特点
– 标识惟一性 – 分类性 – 多态性 – 封装性 – 模块独立性好
18
2.3.2 面向对象方法的基本概念 (续)
• 2.类和实例
– 类是具有共同属性、共同操作方法的对象的集 合,是对象的抽象 – 对象是其对应类的一个实例
19
2.3.2 面向对象方法的基本概念 (续)
第2章 程序设计基础
1
内容提要
• 程序设计方法与风格 • 结构化程序设计 • 面向对象的程序设计方法,对象、方法、 属性及继承与多态性
2
2.1 程序设计方法与风格
• 2.1.1 程序设计方法
– 结构化设计方法
• 模块内部程序各部分要按照自顶向下的结构划分 • 各程序部分应按功能组合 • 各程序之间的联系尽量通过调用子程序来实现,不 用或少用GOTO方式
• 三种基本结构
– 顺序结构 – 选择结构 – 重复结构
9
2.2.2 结构化程序的基本结构与 特点(续)
• 顺序结构
10
2.2.2 结构化程序的基本结构与 特点(续)
• 选择结构
– 又称分支结构 – 简单选择结构 – 多分支选择结构
11
2.2.2 结构化程序的基本结构与 特点(续)
• 重复结构
• 答案 B
31
2.4 典型考题分析
• 【例2-9】结构化程序设计主要强调的是 __________。
A)程序的规模 B)程序的易读性 C)程序的执行效率 D)程序的可移植性
• 答案 B
32
2.4 典型考题分析
• 【例2-10】关于结构化程序设计原则和方 法的描述错误的是__________。
A)选用的控制结构只准许有一个入口和一个出口 B)复杂结构应该用嵌套的基本控制结构进行组合嵌套来 实现 C)不允许使用GOTO语句 D)语言中所没有的控制结构,应该采用前后一致的方法 来模拟
– 面向对象程序设计方法
3
2.1.2 程序设计风格
• 原则:清晰第一,效率第二 • 1. 源程序中的内部文档
– 符号名的命名:有一定实际含义 – 程序的注释:
• 序言性注释 • 功能性注释
– 程序的视觉组织:层次清晰
• 2. 数据说明
– 数据说明的次序规范化 – 说明语句中变量安排有序化 – 使用注释来说明复杂数据的结构
• 答案 C
33
2.4 典型考题分析
• 【例2-11】采用面向对象技术开发的应用 系统的特点是________。
A)重用性更强 B)运行速度更快 C)占用存储量小 D)维护更复杂
• 答案 A
Leabharlann Baidu
34
2.4 典型考题分析
• 【例2-12】在面向对象方法中,类的实例 称为________。(2005年4月) • 答案 对象
5
2.1.2 程序设计风格(续)
• 4.输入和输出
– 对输入数据检验数据的合法 性 – 检查输入项的各种重要组合 的合理性 – 输人格式要简单,使得输入 的步骤和操作尽可能简单 – 输人数据时,应允许使用自 由格式 – 应允许缺省值 – 输入一批数据时,最好使用 输入结束标志 – 在以交互式输入/输出方式 进行输人时,要在屏幕上使 用提示符明确提示输入的请 求,同时在数据输入过程中 和输入结束时,应在屏幕上 给出状态信息 – 当程序设计语言对输入格式 有严格要求时,应保持输入 格式与输入语句的一致性; 给所有的输出加注释,并设 计输出报表格式
4
2.1.2 程序设计风格(续)
• 3.语句的结构
– – – – – – – – 在一行内只写一条语句 程序编写应优先考虑清晰性 清晰第一,效率第二 在保证程序正确的基础上再 要求提高效率 避免使用临时变量前使程序 的可读性下降 避免不必要的转移 尽量使用库函数 避免采用复杂的条件语句 – 尽量减少使用“否定”条件 语句 – 数据结构要有利于程序的简 化 – 要模块化,使模块功能尽可 能单一化 – 利用信息隐蔽,确保每一个 模块的独立性 – 从数据出发去构造程序 – 不要修补不好的程序,要重 新编写
14
2.3 面向对象的程序设计
• 2.3.1 关于面向对象方法
– 对系统的复杂性进行概括、抽象和分类,使软 件的设计与现实形成一个由抽象到具体、由简 单到复杂这样一个循序渐进的过程,从而解决 大型软件研制中存在的效率低、质量难以保证 、调试复杂、维护困难等问题。 – 结构化的分解突出过程,即如何做(How to do)?它强调代码的功能是如何实现的;面向对 象的分解突出现实世界和抽象的对象,即做什 么(What to do)?
• 3.消息
– 对象之间进行通信的机制 – 三部分组成
• 接收消息的对象的名称 • 消息标识符(消息名) • 零个或多个参数
20
2.3.2 面向对象方法的基本概念 (续)
• 4.继承
– 继承是父类和子类之间共享数据的方法的机制 – 一个子类可以继承它的父类(或祖先类)中的 属性和操作 – 子类中可以定义自己的属性和操作 – 单重继承、多重继承
24
2.4 典型考题分析
• 【例2-2】对建立良好的程序设计风格,下 面描述正确的是______。
A)程序应简单、清晰、可读性好 B)符号名的命名只要符合语法 C)充分考虑程序的执行效率 D)程序的注释可有可无
• 答案 A
25
2.4 典型考题分析
• 【例2-3】源程序的文档化不包括 _________。
• 答案 A
28
2.4 典型考题分析
• 【例2-6】下列选项中不属于结构化程序设 计方法的是__________。(2006年4月)
A)自顶向下 B)逐步求精 C)模块化 D)可复用
• 答案 D
29
2.4 典型考题分析
• 【例2-7】下列选项不符合良好程序设计风 格的是__________。(2006年9月)
– 又称为循环结构 – 当型 – 直到型
12
2.2.2 结构化程序的基本结构与 特点(续)
• 特点
– 关系清晰、易读、易理解性好、易维护。 – “自顶向下、逐步细化”,提高效率,降低成 本
13
2.2.3 结构化程序设计原则和方法的 应用
• • • • • • 用有限的控制结构 一个入口和一个出口 每块只有一个入口和一个出口 使用嵌套 前后一致 避免GOTO语句
6
3.2 结构化程序设计
• 基本思想
– 关于GOTO语句 – 工程思想 – 结构化思想 – 自顶向下,逐步求精,模块化,限制使用 GOTO语句
7
2.2.1 结构化程序设计的原则
• • • • 1.自顶向下 2.逐步求精 3.模块化 4.限制使用GOTO语句
8
2.2.2 结构化程序的基本结构与 特点
A)源程序要文档化 B)数据说明的次序要规范化 C)避免滥用 GOTO 语句 D)模块设计要保证高耦合、高内聚
• 答案 D
30
2.4 典型考题分析
• 【例2-8】结构化程序设计的三种基本控制 结构是__________。
A)过程、子程序和分程序 B)顺序、选择和重复 C)递归、堆栈和队列 D)调用、返回和转移
38
2.4 典型考题分析
• 【例2-16】使用已经存在的类作为基础建 立新类的定义,这种技术叫做类的 ________。 • 答案 继承
39
2.4 典型考题分析
• 【例2-17】一个类允许有多个父类,这种 继承称为________。 • 答案 多重继承
40
15
2.3.1 关于面向对象方法(续)
• 主要优点
– 与人类习惯的思维方法一致 – 稳定性好 – 可重用性好 – 易于开发大型软件产品 – 可维护性好
16
2.3.2 面向对象方法的基本概念
• 1.对象(Object)
– 对象是基本的运行时认得实体,它既包括数据(属性 ),也包括作用于数据的操作(行为)。 – 一个对象把属性和行为封装为一个整体 – 一个对象通常可由对象名、属性和操作3部分组成
35
2.4 典型考题分析
• 【例2-13】消息传递是对象间通信的手段,一个 对象通过向另一个对象发送消息来请求其服务。 一个消息通常包括_______。
A)接收消息的对象的名称、消息标识符和必要的参数 B)接收消息的对象的名称和消息标识符 C)发送消息的对象的名称、调用的接收方的操作名和必 要的参数 D)消息标识符
A)符号名的命名要有实际意义 B)正确的文档格式 C)良好的视觉组织 D)正确的程序注释
• 答案 D
26
2.4 典型考题分析
• 【例2-4】注释一般为序言性注释和 _______注释。 • 答案 功能性
27
2.4 典型考题分析
• 【例2-5】在设计程序时,应采纳的原则之 一是_______。
A)程序结构应有助于读者理解 B)不限制GOTO语句的使用 C)减少或取消注解行 D)程序越短越好
• 答案 A
36
2.4 典型考题分析
• 【例2-14】一个对象在收到消息时,要予 以响应。不同的对象收到同一消息可以产 生完全不同的结果,这一现象叫做对象的 __________。
A)继承性 B)多态性 C)抽象性 D)封装性
• 答案 B
37
2.4 典型考题分析
• 【例2-15】在面向对象程序设计中,从外 面看只能看到对象的外部特征,而不知道 也无需知道数据的具体结构以及实现操作 的算法,这称为对象的______。 • 答案 封装性