结构化语言是专门描述一个功能单元逻辑要求的。它不同于
自然语言,也区别于任何特定的
程序语言(如
VB、VC 等),是一种介于两者之间的语言。结构化
描述语言一般采用英语,这与一般
编程语言很相似。它既有自然语言灵活性强、表达丰富的特点,又有
结构化程序的清晰易读和逻辑严密的特点。也是一种用于数据库查询和
编程的语言,已经成为
关系型数据库普遍使用的标准,使用这种标准数据库语言对程序设计和数据库的维护都带来了极大的方便,广泛地应用于各种数据查询。VB和其他的
应用程序包括Access、Foxpro、
Oracle、SQL Server等都支持
SQL语言。
特征
结构化语言的显著特征是代码和数据的分离。这种语言能够把执行某个特殊任务的指令和数据从程序的其余部分分离出去、隐藏起来。获得隔离的一个方法是调用使用局部(临时)变量的
子程序。通过使用
局部变量,我们能够写出对程序其它部分没有副作用的子程序。这使得编写共享
代码段的程序变得十分简单。如果开发了一些分离很好的函数,在引用时我们仅需要知道函数做什么,不必知道它如何做。切记:过度使用
全局变量(可以被全部程序访问的变量)会由于意外的副作用而在程序中引入错误。
结构化语言比
非结构化语言更易于程序设计,用结构化语言编写的程序的
清晰性使得它们更易于维护。这已是人们普遍接受的观点了。比如作为结构化语言的C语言主要结构成分是函数C的独立子程序。在C语言中,函数是一种构件(程序块),是完成程序功能的基本构件。函数允许一个程序的诸任务被分别定义和编码,使程序模块化。可以确信,一个好的函数不仅能正确工作且不会对程序的其它部分产生副作用。
种类
面向对象的程序设计(OOP)是结构化语言的自然延伸。OOP的先进编程方法,会产生一个清晰而又容易扩展及维护的程序。一旦您为您的程序建立了一个对象,您和其他的程序员可以在其他的程序中使用这个对象,完全不必重新编制繁复的代码。对象的重复使用可以大大地节省开发时间,切实地提高您和其他人的
工作效率。
C语言
C语言是一种结构化语言。它层次清晰,便于按模块化方式
组织程序,易于调试和维护。C语言的表现能力和处理能力极强。它不仅具有丰富的
运算符和
数据类型,便于实现各类复杂的
数据结构。它还可以
直接访问内存的
物理地址,进行位(bit)一级的操作。由于C语言实现了对硬件的编程操作,因此C语言集
高级语言和低级语言的功能于一体。既可用于系统软件的开发,也适合于应用软件的开发。此外,C语言还具有效率高,
可移植性强等特点。因此广泛地移植到了各类各型计算机上,从而形成了多种版本的C语言。
发展历史
1960
ALGOL 60 ,第一种结构化语言出现。它是结构化语言家族树中的
根节点,并最终产生
Pascal这样的语言。ALGOL成为六十年代中期至末期欧洲最为流行的语言。
六十年代早期,Kenneth Iverson开始语言方面的工作,最终产生了
APL-A
编程语言。它使用专门的
字符集,为了正确地使用,你还需要兼容APL的
I/O设备。
1962
APL被写入Iverson的《A Programming Language》一书中。
SNOBOL这个以“首字母拼词命名”的产品,在工作的初期就取得了绝对的成功,SNOBOL——面向
字符串符号(StriNg Oriented symBOlic Language)语言。它衍生了其他一些以首字母拼词命名的产品: FASBOL,一个SNOBOL
编译器(1971年),还有SPITBOL——Speedy ImplemenTation of snoBOL——同样在1971年。
1963
ALGOL 60进行修正。
PL/1的工作开始。
1964
在
达特茅斯大学,John G.Kemeny和Thomas E.Kurtz教授发明了
BASIC。最初的实现是一个
编译器。第一个BASIC程序在1964年五月一日下午四点运行。PL/1发布。
1965
SNOBOL3出现。
1966
FORTRAN 66出现。
在Bolt,Beranek和Newman开始了LOGO的工作。小组的头是
Wally Fuerzeig,而且还包括Seymour Papert。LOGO中最著名的便是“龟作图”。
1967
SNOBOL4,功能获得极大加强的SNOBOL,出现了。
1968
ALGOL 68,相对于ALGOL 60它是个怪物。一些规范委员会的成员——包括C.A.R.Hoare和Niklaus Wirth——却赞同该计划。事实证明ALGOL 68是难以实现的。
ALTRAN,一个FORTRAN的变种出现。
Niklaus Wirth开始Pascal方面的工作。
1969
500人参加在纽约Armonk的
IBM总部召开的APL会议。APL的分发需求如此之大,该活动此后被人们称为“The March on Armonk”。
1970
70年代早期,
Charles Moore在他的语言
Forth中写下了第一个有意义的程序。
同样是在70年代早期的某一天,
Xerox PARC由Alan Kay领导,开始了Smalltalk的设计工作。早期版本包括Smalltalk-72,Smalltalk-74和Smalltalk-76。
Pascal在CDC 6000-series电脑上的一个实现出现了。
Icon,SNOBOL4的一个后代产品问世。
1972
Konrad Zuse写的关于Plankalkul(见1946年)手稿终于出版了。
Dennis Ritchie设计了C。但是最终的参考手册却是在1974年发布的。
Prolog的第一个实现——Alain Colmerauer和Phillip Roussel的功劳。
1974
另一个COBOL的ANSI规范出现。
1975
Tiny BASIC,由Bob Albrecht和Dennis Allison设计(由Dick Whipple和John Arnold实现),运行在2KB内存的
微型计算机上。一台4KB的机器是较为合适的,它将有2KB的内存应用于这个程序上。
Bill Gates和Paul Allen编写的一个BASIC版本以抽取每份拷贝
版税的形式销售给MITS(Micro Instrumentation and Telemetry Systems)。MITS生产Altair,这是一种8080结构的
微型计算机。
Scheme,一个LISP的“方言”,由G.L. Steele和G.J. Sussman设计。
Pascal
用户手册和报告出版,Jensen和Wirth编写。许多人至今都认为它是Pascal方面权威的参考书籍。
B.W. Kerninghan描述了RATFOR——RATional FORTRAN。它是预处理程序,并且允许在FORTRAN中使用类C的
控制结构。RATFOR被应用到了Kernighan和Plauger的“Software Tools”中,它出现在1976年。
1976
Design System Language出现,它被认为是
PostScript的先驱。
1977
MUMPS的
ANSI标准出现——
麻省总医院多用途程序设计系统(
Massachusetts General Hospital Utility Multi-Programming System)。MUMPS最初被用来处理医疗记录,它只能识别字符串类型。随后被重新命名为M。
设计竞赛将导致Ada的产生。由Jean Ichbiah带领的
Honeywell Bull队伍,即将赢得比赛。
Kim Harris和其他人建立了FIG,一个FORTH
兴趣小组。他们开发了FIG-FORTH,售价大约为20美元。
70年代晚期的某天,Kenneth Bowles设计出了
UCSD Pascal,它使得Pascal可以用在
PDP-11和基于
Z80 的电脑上。
Niklaus Wirth开始设计Modula,它
Modula-2的先行者,Pascal的继承者。
1978
AWK——一个文本
处理语言,以它设计者Aho、Weinberger和Kernighan的名字命名。
1980
Smalltalk-80出现。
Modula-2出现。
Franz LISP出现。
Bjarne Stroustrup开发了一个语言集——被总称为“C With Classes”——它成为C++的滋生土壤。
1981
Effort开始成为一个LISP的“公共方言”,常被人称作Common LISP。
日本开始
第五代电脑系统工程。主要语言是Prolog。
1982
ISO Pascal出现。
PostScript出现。
1983
Smalltalk-80公布:它由Goldberg等人完成。
Ada出现。他的名字来自Lovelace女伯爵Augusta Ada Byron,她是英国诗人拜伦的女儿。因其在
巴贝奇分析机上设计了解
伯努利方程的一个程序,而被誉为第一位女程序员。在1983年,国防部指导的全新“任务评定”
应用程序是使用该语言编写的。
1983年的后期和1984年早期,
微软和Digital Research共同发布第一个微型计算机的C
编译器。
七月,第一个C++实现露面。该名称是由Rick Mascitti取的。
11月,
Borland的
Turbo Pascal的“冲击”犹如一场
核风暴,这得益于《BYTE》杂志的广告。
1984
APL2的参考手册面世。APL2是APL的扩展,它允许嵌套数组。
1985
Vanilla SNOBOL4之微机版发布。
Methods,PC上的面向行(line-
oriented)的Smalltalk出现。
1986
Smalltalk/V露面——第一个广泛应用于微机的Smalltalk版本。
Apple公司为
Mac机器发布Object Pascal。
Borland发布Turbo Prolog。
Charles Duff发布Actor,一个开发微软Windows应用程序的
面向对象语言。
C++露面。
1987
Turbo Pascal 4.0发布。
1988
CLOS规范——公共LISP对象系统(Common LISP Object System)——发表。
Niklaus Wirth完成Oberon,这是他继Modula-2的后续行动。
1989
C++2.0形成了一个参考手册的初稿。2.0版本增加了诸如
多继承和成员指针等特性。
1990
C++2.1,B.Stroustrup等作者的《Annotated C++ Reference Manual》一书出版。这个版本增加了模板和
异常处理特性。
FORTRAN 90包含了众多新元素比如case语句和
派生类型。
Kenneth Iverson和Roger Hui在APL 90会议上提出了
J语言。
1991
1992
Dylan——以Dylan Thomas命名——由Apple公司发布的一个类似Scheme的
面向对象语言。
1993
ANSI发布X3J4.1
技术报告——面向对象的COBOL提议初稿。真正的标准预计在1997年完成。
1994
微软将Visual Basic for Application整合到
Excel中。
1995
二月,ISO接受
Ada语言1995
修订版。它被称为Ada95,其中包括OOP特性和支持
实时系统。
1996
第一个ANSI C++标准预发布。