结构化程序设计的思想规定了一套方法

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第四章程序设计思想和方法

4.1.2 结构化程序设计的思想规定了一套方法,要求程序设计者按照一定的

结构形式来设计和编写。那么,结构化程序设计的思想包括哪几个方

面?。

答:(1)一个大的程序可划分为若干个模块,每个模块又可以继续分为更

小的子模块,最终分出的模块能完成一个独立的功能,模块之间按层次关

系进行组织。

(2 )程序由一些基本结构组成,任何一个复杂的程序都可以由三种基本结构组成,即顺序结构,选择结构和循环结构.

(3)设计程序时,应采用自顶向下,逐步细化的实施方法。

随着计算机应用领域的扩大,软件的需求量越来越大,对其复杂程度的要求也越来越高。到了20 世纪60年代,软件业终于爆发了所谓的“软件危机”。

为了克服这一危机,人们提出了采用结构化的程序设计方法以及用工程的方法开发软件等软件开发思想。

某书店需要设计一个售书管理系统,对进书、售书进行管理,并提供统计、分析、报表等功能。对于这样一个系统,初看起来觉得无从下手,但如果从书店的业务流程分析出发,首先可以将它分为进书管理、零售管理、批发管理等若干个大的模块。每个模块又可以按其功能再分为若干个小的子模块,这样层层细分,直到不能再分为止。最底层的子模块具有独立的功能,可以用程序设计语言明确地描述出来。例如,零售管理模块又可再分为零售售书、零售退书、零售查询、零售盘点4 个子模块,如图4-2 所示,这时就可以用程序语言直接编程实现。

4.2 面向对象程序设计

结构化程序设计成功地为处理复杂问题提供了有力的手段,然而到了

20 世纪80年代末,它的一些缺点越来越突出,当数据量增大的时候,数据

与处理这些数据的方法之间的分离使程序变得越来越难以理解。为了克服

这些缺点,人们提出了一种新的思路——面向对象的程序设计方法,该方

法日益受到人们的重视,给软件产业带来了新的飞跃。

4.2.1 面向对象程序设计的思想

假如我们准备设计一个电子商务系统,按照结构化程序设计的方法,首先需要分析它的业务流程,然后据此进行设计如图4-3 所示。

在整个流程中,每个过程都必须与数据库交互。假如要改变订单类型,就需要修改数据库结构,业务流程的相应模块也将发生变化,这样,程序设计的许多过程都要重新编写,工作量将是巨大的。如果采用面向对象的程序设计方法,就可以将数据与其对应的处理方法“捆绑”在一起,相互间通过接口进行交互。当产生新的订单类型时,原系统只需从原有的订单类型“派生”出新的订单类型就可以解决了,从而避免“牵一发而动全身”的现象发生。对程序而言,修改的工作量也将大大减少。通过对比可以看出,结构化程序设计是从系统的功能入手进行描述的。在实际设计中,用户的需求和软、硬件条件是不断变化的,按照功能划分设计的模块必然也是易变的和不稳定的,这样开发出来的模块可重用性不高。面向对象程序设计从所处理的数据入手,以数据而不是以功能为中心来描述系统。数据相对于功能而言,具有更强的稳定性,因此,以数据为中心设计出来的系统,具有较强的稳定性,模块的可重用性也比较高。

面向对象程序设计是目前最流行的程序开发技术,它的提出并不是对结构化程序设计的否定,而是对它的继承与发展,面向对象程序设计中依然渗透着结构化程序设计的思想与方法。( )

面向对象程序设计围绕真实世界的概念来组织模型,采用对象来描述客观实体( )

关于对象,属相,方法的正确说法是,在VB 中,我们总是和对象打交道。新建一个窗体就是新建了一个窗体对象;从VB 的工具箱中将一个控件拖放到窗体中,实际上也生成了一个对象

在面向对象的程序设计中,对象的特征、功能、对象之间进行通信的消息分别称为“属性”、

“方法”、“事件”。对象的属性是用来描述对象的外部特征的。

对象名.属性名=属性值或变量=对象名.属性名例如,Form1 .Caption ="打字测试程序";strText =txtMyText .Text 可以改变窗体的标题,并给字符串变量strText 赋值。

方法是一个对象允许其他对象与之交互的方式,它表明了一个对象所具有的能力。

B VB 的执行机制与此类似,是按事件驱动方式工作的。例如,用户单击按钮就触发了Click 事件,程序会执行Click 事件过程;当我们在窗体中拖放一个Timer 控件,并设置了它的“Interval”属性,系统就会在指定时间触发“Timer”事件。

VB为窗体和大多数控件都规定了一组事件,当应用程序被启动后VB 随时准备捕获各种事件。一旦发生了某个事件,VB 就会执行与该事件相联系的事件过程;执行完后,VB 将等待下一个事件的发生。VB 的这种事件驱动机制为编写程序带来极大的便利,我们只需根据具体情况,选择适当的事件编写代码就可以构建应用程序了.

使用VB进行程序设计的方便之处就在于VB给我们定义了许许多多的

类,从窗体、工具栏、状态栏、命令按钮、图片框、单选框、复选框到时钟、

文件、文件夹、驱动器、滚动条、旋转按钮等,它提供了我们在程序设计中

用到的多数类,这大大方便了程序的编写。编写一般的程序,我们只需要生成相应类的实例(即生成对象)就可以实现想要的功能。

VB 工具箱中的类是可视类,设计程序时,将它们直接拖放到窗体中就

可以生成类的实例(对象)。如果用“工程”菜单中的“引用”命令,还可以

使用许多不可见类,这些类一般包含在以“.dll”为扩展名的文件中,称为动态链接库,利用动态链接库可以较好地实现代码的重用。例如,在Windows 的应用程序中,你到处都能见到菜单、工具栏、状态栏这些对象,实际上它们大多来自相同的动态链接库文件。在VB 中,自定义类需要放在类模块中,类模块是以“.cls”为扩展名的文件。

添加类模块的方法是:在资源窗口中右击,选择“添加”→“添加类模块”命令就可以在当前工程中添加一个类模块。

类模块添加后可以通过属性窗口改变类的名称,在类模块中定义成员

变量,然后通过Property Let/Get设计类的属性,类的方法定义和一般函数

或过程的定义相似。为了使自定义类的属性和方法能在类的外部访问,类的

属性和方法一般应该用Public修饰,如果不加指定,默认属性和方法为Public

类型

4.2.3 面向对象程序设计的基本特征

面向对象程序设计的最突出的特性就是封装、继承和多态性。衡量某

种程序设计语言是否为面向对象的程序设计语言,主要看它是否具有这三个特性。

相关文档
最新文档