请输入您要查询的百科知识:

 

词条 程序设计
释义

§ 概述

程序设计(Programming),程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。专业的程序设计人员常

被称为程序员。

某种意义上,程序设计的出现甚至早于电子计算机的出现。英国著名诗人拜伦的女儿Ada Lovelace曾设计了巴贝奇分析机上解伯努利方程的一个程序。她甚至还建立了循环和子程序的概念。由于她在程序设计上的开创性工作,Ada Lovelace被称为世界上第一位程序员。

任何设计活动都是在各种约束条件和相互矛盾的需求之间寻求一种平衡,程序设计也不例外。在计算机技术发展的早期,由于机器资源比较昂贵,程序的时间和空间代价往往是设计关心的主要因素;随着硬件技术的飞速发展和软件规模的日益庞大,程序的结构、可维护性、复用性、可扩展性等因素日益重要。

另一方面,在计算机技术发展的早期,软件构造活动主要就是程序设计活动。但随着软件技术的发展,软件系统越来越复杂,逐渐分化出许多专用的软件系统,如操作系统、数据库系统、应用服务器,而且这些专用的软件系统愈来愈成为普遍的计算环境的一部分。这种情况下软件构造活动的内容越来越丰富,不再只是程序设计活动了,还包括数据库设计、用户界面设计、接口设计、通信协议设计和复杂的系统配置过程。

程序设计(Programming)是指设计、编制、调试程序的方法和过程。它是目标明确的智力活动。由于程序是软件的本体,软件的质量主要通过程序的质量来体现的,在软件研究中,程序设计的工作非常重要,内容涉及到有关的基本概念、工具、方法以及方法学等。

§ 类型

照结构性质,有结构化程序设计与非结构化程序设计之分。

前者是指具有结构性的程序设计方法与过程。它具有由基本结构构成复杂结构的层次性,后者反之。

按照用户的要求,有过程式程序设计与非过程式程序设计之分。前者是指使用过程式程序设计语言的程序设计,后者指非过程式程序设计语言的程序设计。

按照程序设计的成分性质,有顺序程序设计、并发程序设计、并行程序设计、分布式程序设计之分。

按照程序设计风格,有逻辑式程序设计、函数式程序设计、对象式程序设计之分。

§ 基本概念

有程序、数据、子程序、子例程、协同例程、模块以及顺序性、并发性、并行性、和分布性等。程序是程序设计中最为基本的概念,子程序和协同例程都是为了便于进行程序设计而建立的程序设计基本单位,顺序性、并发性、并行性和分布性反映程序的内在特性。

程序设计规范是进行程序设计的具体规定。程序设计是软件开发工作的重要部分,而软件开发是工程性的工作,所以要有规范。语言影响程序设计的功效以及软件的可靠性、易读性和易维护性。专用程序为软件人员提供合适的环境,便于进行程序设计工作。

计算机程序或者软件程序(通常简称程序)是指一组指示计算机每一步动作的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上。打个比方,一个程序就像一个用汉语(程序设计语言)写下的红烧肉菜谱(程序),用于指导懂汉语的人(体系结构)来做这个菜。 通常,计算机程序要经过编译和链接而成为一种人们不易理解而计算机理解的格式,然后运行。未经编译就可运行的程序通常称之为脚本程序。

程序设计语言(ProgrammingLanguage)是用于编写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。程序设计语言包含三个方面,即语法、语义和语用。语法表示程序的结构或形式,亦即表示构成程序的各个记号之间的组合规则,但不涉及这些记号的特定含义,也不涉及使用者。语义表示程序的含义,亦即表示按照各种方法所表示的各个记号的特定含义,但也不涉及使用着,语用表示程序与使用的关系。

§ 基本成分

有①数据成分,用于描述程序所涉及的数据;

②运算成分,用以描述程序中所包含的运算;

③控制成分,用以描述程序中所包含的控制;

④传输成分,用以表达程序中数据的传输。

§ 程序设计语言分类

按照语言级别可以分为低级语言和高级语言。低级语言有机器语言和汇编语言。低级语言与特定的机器有关、功效高,但使用复杂、繁琐、费时、易出差错。机器语言是表示成数码形式的机器基本指令集,或者是操作码经过符号化的基本指令集。汇编语言是机器语言中地址部分符号化的结果,或进一步包括宏构造。高级语言的表示方法要比低级语言更接近于待解问题的表示方法,其特点是在一定程度上与具体机器无关,易学、易用、易维护。

程序设计语言按照用户的要求有过程式语言和非过程式语言之分。过程式语言的主要特征是,用户可以指明一列可顺序执行的运算,以表示相应的计算过程,如FORTRAN、COBOL、PASCAL等。

按照应用范围,有通用语言与专用语言之分。如FORTRAN、COLBAL、PASCAL、C等都是通用语言。目标单一的语言称为专用语言,如APT等。

按照使用方式,有交互式语言和非交互式语言之分。具有反映人机交互作用的语言成分的语言成为交互式语言,如BASIC等。不反映人机交互作用的语言称为非交互式语言,如FORTRAN、COBOL、ALGOL69、PASCAL、C等都是非交互式语言。

按照成分性质,有顺序语言、并发语言和分布语言之分。只含顺序成分的语言称为顺序语言,如FORTRAN、C等。含有并发成分的语言称为并发语言,如PASCAL、Modula和Ada等。

程序设计语言是软件的重要方面,其发展趋势是模块化、简明化、形式化、并行化和可视化

§ 控制结构

控制结构

任何复杂的程序都由3种基本控制结构组成。它们是顺序结构、选择结构和循环结构。

1. 顺序结构

这是最简单的一种基本结构,依次顺序执行不同的程序块。

2. 选择结构

根据条件满足或不满足而去执行不同的程序块。当条件P满足时执行A程序块,否则执行B程序块。

3. 循环结构

循环结构是指重复执行某些操作,重复执行的部分称为循环体。循环结构分为当型循环和直到型循环两种。

当型循环先判断条件是否满足,当条件P满足时反复执行A程序块,每执行一次测试一次P,直到P不满足为止,跳出循环体执行它下面的基本结构。

直到型循环先执行一次循环体,再判断条件P是否满足,如果不满足则反复执行循环体,直到P满足为止。

这两种循环结构的区别在于:当型循环结构是先判断条件,后执行循环体;而直到型循环结构则是先执行,后判断。直到型循环至少执行一次循环体,而当型循环有可能一次也不执行循环体。[1]

§ 程序文件建立与执行

程序文件也称命令文件,它是由命令组成的ASCII文本文件,可以用任何文本编辑程序或字处理软件来建立和修改。在Visual FoxPro中建立程序文件的最简便的方法是用Visual FoxPro本身提供的编辑器。要使用Visual FoxPro文本编辑器,可以用菜单操作方式,也可以在命令窗口中输入命令。

1. 建立或修改程序文件

同建立其他类型文件一样,建立或修改程序文件也有菜单和命令两种操作方式。

(1) 命令方式。

要建立或者修改一个程序文件,可使用MODIFY命令。其格式是:

MODIFY COMMAND [〈文件名〉|?]

MODIFY FILE [〈文件名〉|?]

其中〈文件名〉指明要建立或者修改的文件。如果省略文件名,编辑窗口会打开名为untitled.prg的文件。当关闭窗口时出现对话框,要求输入文件名。若使用“?”,则显示“打开”对话框。在此框中,用户可以选择一个已存在的文件或者输入要建立的新文件名。如果没有给文件指定扩展名,则MODIFY COMMAND默认为.prg,而MODIFY FILE却默认为空,所以使用MODIFY FILE建立程序文件时文件名必须带扩展名.prg。

文件名中可含通配符“*”和“?”,此时,与文件名相匹配的文件都会被打开,并且各自拥有自己的编辑窗口。用户可以通过“窗口”菜单来选择所需要的窗口。最好在命令后加入文件名,这样将直接建立或修改给出的文件,以后也不需要在存盘时再输入文件名。

(2) 菜单方式。

选择“文件”菜单中的“新建”命令,并选择“程序”单选按钮,再单击“新建文件”命令按钮。在文本编辑窗口中输入程序内容。

不管是用命令方式还是用菜单方式,打开文本编辑窗口后,就可以一条一条地输入命令。在输入过程中出现错误,可用编辑命令进行修改。这里的编辑操作同其他编辑软件(如Word)的编辑操作没有什么不同。当程序建立或修改完毕后,可用Ctrl+W键存盘,退出编辑窗口。

要修改程序文件,选择“文件”菜单中的“打开”命令打开文件即可。

2. 执行程序

在Visual FoxPro系统中,执行程序文件有很多方法。

(1) 命令方式。

使用DO命令执行一个Visual FoxPro程序文件或其他文件。其命令格式是:

DO 〈文件名〉

如果文件名不带扩展名,则Visual FoxPro按下列顺序寻找并执行这些程序:可执行文件(.exe)、应用程序(.app)、编译后的目标程序文件(.fxp)和程序文件(.prg)。

(2) 菜单方式。

在Visual FoxPro系统主菜单下,打开“程序”菜单,选择“运行”,然后在“运行”对话框中输入被执行的程序文件名即可。

执行程序文件时,将依次执行文件中的命令,直到所有命令执行完毕,或者执行到以下命令。

① CANCEL:终止程序运行,清除所有的私有变量,返回命令窗口。

② RETURN:结束程序执行,返回调用它的上级程序,若无上级程序则返回命令窗口。

③ QUIT:结束程序执行并退出Visual FoxPro系统,返回操作系统。[1]  

随便看

 

百科全书收录594082条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2024/9/21 23:24:39