计算机二级vb第二章程序设计基础讲稿
- 格式:doc
- 大小:40.50 KB
- 文档页数:4
第二章程序设计基础
2.1 程序设计设计方法和风格
当今主导的程序设计风格是“清晰第一,效率第二”的观点。
如何形成良好的程序设计风格
1、源程序文档化
(1)符号名的命名:应具有一定的实际含义,以便于对程序功能的理解。
(2)程序注释:正确注释能帮组读者理解程序。
程序注释一般分为序言性注释和功能性注释。
(3)视觉组织:利用空格、空行、缩进使得程序层次分明。
2、数据说明的方法
(1)数据说明的次序规范化。
(2)说明语句中变量安排有序化。
(3)使用注释来说明复杂数据的结构。
3、语句的结构
程序应该简单易懂,语句构造应该简单直接,不应该为提高效率而把语句复杂化。
一般应注意如下:(1)在一行内只写一条语句;
(2)程序编写应优先考虑清晰性;
(3)除非对效率有特殊要求,程序编写要做到清晰第一,效率第二;
(4)首先要保证程序正确,然后才要求提高,速度;
(5)避免使用临时变量而使程序的可读性下降;
(6)避免不必要的转移;
(7)尽可能使用库函数;
(8)避免采用复杂的条件:
(9)尽量减少使用“否定”条件的条件语句;
(10)数据结构要有利于程序的简化;
(11)要模块化,使模块功能尽可能简单化;
(12)利用信息隐蔽性,确保每一个模块的独立性
(13)从数据出发去构造程序;
(14)不要修补不好的程序,要重新编写;
4、输入和输出
在设计和编程时应考虑如下原则:
(1)对所有的输入数据都要检验数据的合法性;
(2)检查输入项的各种重要组合的合理性;
(3)输入格式要简单,以使得输入的步骤和操作尽可能简单;
(4)输入数据时,应允许使用自由格式;
(5)应允许缺省值;
(6)输入一批数据时,最好使用输入结束标志;
(7)在以交互式输入/输出方式进行输入时,要在屏幕上使用提示符明确提示输入的请求,同时在数据输入过程中和输入结束时,应在屏幕上给出状态信息;
(8)当程序设计语言对输入格式有严格要求时,应保持输入格式与输入语句的一致性;给所有的输出加注释,并设计输出报表格式。
2 .2 结构化程序设计
一、结构化程序设计方法的四条原则是:
1、自顶向下;
2、逐步求精;
3、模块化;
4、限制使用goto语句。
二、结构化程序的基本结构和特点:
(1)顺序结构:
(2)选择结构:又称分支结构;
(3)重复结构:又称循环结构。
三、结构化程序设计原则和方法的应用
(1)使用程序设计语言中的顺序、选择、循环等有限的控制结构表示程序的控制逻辑;
(2)选用的控制结构只准许有一个入口和一个出口;
(3)程序语句组成容易识别的块,每块只有一个入口和一个出口;
(4)复杂结构应该用嵌套的基本控制结构进行组合嵌套来实现;
(5)语言中所没有的控制结构,应该采用前后一致的方法来模拟;
2.3 面向对象的程序设计
二、面向对象方法的基本概念
1、对象
对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,由一组表示其静态特征的属性和它可执行的一组操作组成。
即对象是属性和方法的封装体。
对象的属性即对象所包含的信息。
对象的操作描述了对象执行的功能,操作也称为方法或服务。
对象的基本特点:
(1)标识惟一性;指对象可由其内在本质来区分。
(2)分类性;指可以将具有相同属性和操作的对象抽象成类。
(3)多态性;指同一操作可以是不同对象的思维。
(4)封装性;从外部只能看到对象的外部特征。
在面向对象方法中,信息隐蔽是通过对象的封装性来实现的。
(5)模块独立性好。
2、类
类指具有共同属性、共同方法的对象的集合。
所以类是对象的抽象,对象是对应类的一个实例。
3、消息
消息是一个实例与另一个实例之间传递的信息。
4、继承
继承是指能够直接获得已有的性质和特征,而不必重复定义他们。
继承分单继承和多重继承。
单继承指一个类只允许有一个父类,多重继承指一个类允许有多个父类。
5、多态性
多态性是指同样的消息被不同的对象接受时可导致完全不同的行动的现象。
在面向对象软件技术中,多态性是指子类对象可以像父类对象那样使用,同样的消息可以发送给父类对象也可以发送给子类对象。
课后习题分析
一. 选择题
1.结构化程序设计主要强调的是()
A. 程序的规模
B. 程序的易读性
C. 程序的执行效率
D. 程序的可移植性
【评析】结构化程序设计方法以提高程序清晰性为目标。
2.对建立良好的程序设计风格,下面描述正确的是()
A. 程序应简单、清晰、可读性好
B. 符号名的命名只要符合语法
C. 充分考虑程序的执行效率
D. 程序的注释可有可无
【评析】符号名的命名应具有一定的实际含义,以便于对程序功能的理解。
所以选项B错。
当今主导的程序设计风格是“清晰第一,效率第二”的观点,所以C错。
正确程序注释能帮组读者理解程序,所以D 错。
【答案】A
3.在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送()
A. 调用语句
B.命令
C.口令
D.消息
【评析】消息是一个实例与另一个实例之间传递的信息。
【答案】D
4.信息隐蔽的概念与下述哪一种概念直接相关?()
A.软件结构定义
B.模块独立性
C.模块类型划分
D. 模块耦合度
【评析】信息隐蔽的概念与模块独立性直接相关,模块独立性越强,信息隐蔽性越好。
提高模块内的内聚性和减弱模块间的耦合性,有利于提高模块的独立性。
【答案】B
5.下面对对象概念描述错误的是()
A.任何对象都必须有继承性
B.对象是属性和方法的封装体
C.对象间的通讯靠消息传递
D.操作是对象的动态属性
【评析】对象是由一组表示其静态特征的属性和它可执行的一组操作组成。
即对象是属性和方法的封装体。
消息是一个实例与另一个实例之间(即对象间)传递的信息。
不是每一个对象都必须有继承性。
【答案】A
二.填空题
1.结构化程序设计的三种基本逻辑结构为顺序、选择和()
【评析】
【答案】重复(或循环)
2.源程序文档化要求程序应加注释。
注释一般分为序言性注释和()
【评析】程序注释:正确注释能帮助读者理解程序。
程序注释一般分为序言性注释和功能性注释。
【答案】功能性
3.在面向对象方法中,信息隐蔽是通过对象的()性来实现的
【评析】对象的封装性:从外部只能看到对象的外部特征,从外面不能直接使用对象的处理能力,也不能直接修改其内部状态,信息隐蔽是通过对象的封装性来实现的。
4.类是一个支持集成的抽象数据类型,而对象是类的()
【评析】类指具有共同属性、共同方法的对象的集合。
所以类是对象的抽象,对象是对应类的一个实例。
【答案】实例
5.在面向对象方法中,类之间共享属性和操作的机制称为()
【答案】继承。