计算机语言发展的几个过程是_计算机语言的发展过程是什么 全球球精选
现在大家都会在网络上汲取相关知识内容,比如计算机语言发展的几个过程是_计算机语言的发展过程是什么,为了更好的解答大家的问题,小编也是翻阅整理了相应内容,下面就一起来看一下吧!
(资料图片)
计算机语言的发展
1.计算机语言的历史回顾
早期程序员使用机器语言进行编程操作,直接操作用数字表示的机器代码。后来为了便于阅读,机器码用英文字符串表示,于是出现了汇编语言。
美国计算机科学家巴科斯设计的FORTRAN语言,1956年在IBM的计算机上首次实现,标志着高级语言的到来。FORTRAN语言以其简单、高效的特点,在接下来的几十年里成为科学与工程计算的主流语言。除了FORTRAN,还有其他科学和工程计算语言,如ALGOL60。随着计算机应用的深入,需要使用计算机进行业务管理,于是出现了COBOL这种商业和管理语言,并一直流行至今。
这些早期的计算机语言都面向计算机专业人员。为了普及计算机语言,让计算机更普及,出现了入门级BASIC语言。迄今为止,BASIC语言仍然是大多数软件开发人员接触到的第一种计算机语言,也是最流行的计算机语言。
20世纪70年代初,结构化程序设计的思想孵化了两种结构化程序设计语言,一种是PASCAL,一种是c,两种语言的语法结构基本等价,都通过函数、过程等语言特征构成了结构化程序设计的基础。但主要区别在于PASCAL语言强调语言的可读性,所以PASCAL语言成为学习算法、数据结构等软件基础知识的教学语言。C语言强调语言的简单性和高效性,所以C语言在随后的几十年里成为了主流的软件开发语言,其高效性使得C语言相当于一种“高级汇编语言”。
虽然面向对象的思想可以追溯到20世纪60年代,但面向对象思想的普遍接受仍然得益于面向对象语言的贡献。在众多面向对象语言中,最突出的是C语言。20世纪80年代初,ATT贝尔实验室的比雅尼斯特劳斯特鲁普在C语言的基础上设计并实现了C语言。C继承了C语言的所有优点,如简单、高效,并引入了面向对象的思想,如类、封装、继承、多态等。C语言的这些特点使得C程序员在学习面向对象思想的同时,不必放弃已有的知识和经验,原有的软件积累也可以利用。同时,面向对象的设计开发方法使软件的分析、设计和构建更加完善。因此,在C语言庞大的程序员团队的帮助下,C成为了主流的面向对象语言,推动了面向对象思想被普遍接受。c是一种混合面向对象的语言。像任何人类自然语言一样,C语言提供了一种表达思想和概念的方式。当问题变大变复杂的时候,用C语言解决问题会比其他语言更容易,更灵活。在最早的面向对象语言中,除了C之外,还有一种相当流行的纯面向对象语言,即Smalltalk语言,它产生于20世纪70年代末80年代初,并开始流行。
计算机发展的历史,也是人们不断追求更高模块化、抽象化、封装化的历史。首先,的抽象是以计算机为中心的:首先,用0和1表示的二进制值被抽象成字节、整数、长整数、浮点等各种预定义的数据类型。然后为了表达更复杂的数据,出现了以结构表示的自定义数据类型。除了数据抽象,计算机指令也有一个抽象过程:从表达式和语句到函数和过程。结构化编程是以计算机为中心的抽象的体现,其将数据与代码分离的思想与计算机硬件的处理机制是一致的。始于20世纪60年代末的软件危机迫使人们寻找解决方案。解决软件危机的努力主要朝两个方向发展。首先,针对软件开发过程的工程化管理,提出了软件开发的生命周期模型,包括:瀑布模型、快速原型法、螺旋模型、喷泉模型等;另一种解决方法是研究软件开发过程中的分析和设计方法,提出结构化程序设计方法。一时间,“算法数据结构=程序”几乎成了软件开发的唯一准则。结构化编程方法从计算机发展的角度来看是自然的,但在今天,从抽象的角度来看,这种方法几乎可以说是一种时代错误。软件开发的主要目的是描述和反映现实世界,而现实世界由各种大小的物体组成:从宇宙到原子,物体被层层包裹;物质世界如此,人类社会的构成也是如此。从个体,到集体,到整个社会,都可以用物体来描述。因此,抽象过程应该以现实世界中的对象为中心,面向对象的抽象方法将走向前台,为软件开发提供从分析、建模到设计和实现的统一工具。面向对象技术和基于它的组件技术为彻底解决软件危机铺平了道路。
大量的应用要求软件开发的效率。最初的高级语言,如BASIC、PASCAL等,结合可视化界面编程技术、面向对象的思想和数据库技术,产生了所谓的第四代语言,如Visual Basic、Delphi等。Visual BASIC的语言基础是BASIC,Delphi的语言基础是PASCAL。这两种语言都是软件开发人员所熟悉的。Visual Basic和Delphi是目前应用软件的主流开发工具。
长期以来,人工智能一直是人们的梦想。从图灵开始,半个多世纪以来,计算机科学家一直在对人工智能进行不懈的探索。在此期间,人工智能研究的语言工具主要有两种,一种是LISP表处理语言,另一种是PROGLOG语言。人们通常称之为第五代语言,但这两种语言并没有给人工智能的研究带来实质性的进展。因此,它们不应该被称为第五代语言。我们只能期待真正的第五代语言的出现。
互联网诞生于20世纪60年代末,此后二十多年一直缓慢发展。直到上世纪90年代,HTML语言和HTML图形浏览器马赛克的出现,使得互联网在随后的十几年里得到了前所未有的发展。从HTML、DHTML到XML,Web存储格式语言在信息发布和交流中发挥了巨大的作用。这些Web存储格式语言与以前的计算机语言有很大不同。它们通过标签来识别内容和数据,所以严格意义上不应该称之为计算机语言。
在Web技术的发展过程中,Java语言确实可以称之为计算机语言,并且得到了极大的普及。Java是一种面向对象的网络语言。其独特的网络功能包括:平台独立性、动态代码下载、为多媒体功能设计的多线程以及为通过互联网快速传输而设计的紧凑代码格式。Java的工作方式不同于现有的桌面软件应用程序。Java程序不需要存储在你的PC上,而是存储在一个中央网络服务器上。当您通过浏览器访问带有Java小程序的网页时,Java小程序将被自动下载并运行。因为Java程序通常都是很小的程序,下载运行会比大程序快很多。另外,在Java applet这样的中央存储模式下,版本控制更容易。您可以从任何具有Java虚拟机的机器上访问任何服务器上的Java程序。
20世纪90年代,软件复用的需求和呼声促使构件技术在面向对象技术的沃土上迅速萌芽和生长,并开始结出累累硕果。软件组件被定义为自包含的、可编程的、可重用的、独立于语言的代码片段,并且这样的软件组件可以容易地插入到应用程序中。软件公开方法和属性,触发事件,并通过名称或ID号全局表示自己。已经成为流行标准的组件模型包括COM/DCOM组件模型和CORBA组件模型。组件技术是计算机软件发展的最新成果,也是半个多世纪以来寻求的一种有效的软件构造方法。
在计算机语言的发展中,至少有上千种语言,但能被广泛使用的计算机语言屈指可数。一门计算机语言要想普及,不仅要有自己的独到之处,还要符合当时的应用需求。
计算机语言不应该只是思维放大的工具。事实上,计算机语言已经成为我们思维的一部分。计算机正在向自然语言方向发展,其最终目标应该是成为人类与计算机之间的自然交流工具。人们可以通过这样的语言向计算机表达自己的知识、思想、感情和愿望,这种语言可以称为知识语言或智能语言。在这一点上,“计算机”的名字应该换成别的,因为它与人类智能的界限不是那么明显。这就是人工智能,是我们人类梦想的最高境界。
2.从数值运算、符号运算到分量运算
先简单回顾一下运算的历史:最早的运算属于数值运算,对阿拉伯数字进行加减乘除等数学计算;数学家通过抽象数值运算,发明了符号运算,其特点是不表示实际的运算对象,而是以抽象符号为运算对象。数学家通过推导符号,构建了一个庞大的数学公式库,物理学家则以符号运算为工具,研究物质世界的作用机制。这两个操作的操作对象分别是数字和字符串。从组件来看,它们属于两个非常特殊的组件。
运算是计算机语言的主要功能。早期的计算机语言如FORTRAN主要用于科学和工程计算,属于数值运算的范畴。对于数学家和工程师来说,公式推导等符号运算是极其有用和迫切需要的,于是相应的语言工具出现了。其中,Mathematica语言工具是一种广泛流行的数学工具。除了强大的数值运算功能,最重要的核心是可以进行公式推导。在Mathematica内部,有一种模式匹配的方法作为其数学运算和公式推导的基础。
既然数值运算和符号运算的对象:数字和字符串属于两种特殊类型的分量,那么除了数值运算和符号运算之外,应该还有分量运算。目前只有KCOM Space这种软件开发平台实现了组件化操作。作为一个纯组件平台,KCOM空间的核心优势之一就是率先提出并实现了一种全新的运营模式——组件运营。
在纯分量空间中,对象不再仅仅是数字和字符串,还包含各种种类和形式的分量。因此,KCOM空间提出并实现了组件操作:组件作为操作对象参与操作,比如定义组件变量、组件常量和组件数组,将组件作为值赋给组件变量,在方法调用中使用组件作为参数。
分量运算是数值运算和符号运算的发展和扩展,包含了前两种运算。组件操作最明显的特点就是直观明了,降低了学习和使用的难度。因此,组件操作语言将成为一种流行的语言。通过构件操作语言,每个人都可以表达自己的知识,这样表达出来的构件系统就是一个知识型系统,积少成多可以形成一个知识构件库。
组件操作最直接的效果就是代码的可视化。在C等面向对象的编程语言中,代码中组件的使用是通过一系列代码来完成的:首先声明一个组件类的实例,然后每个要设置的属性都需要一个赋值代码行。相比之下,组件操作使组件能够直接插入到代码中,并且所有要设置的属性都可以通过组件的属性对话框进行可视化设置。这是代码的可视化。第四代语言最重要的特点是界面可视化,即用户界面可以以所见即所得的方式排列。组件操作引入的代码可视化,使可视化程度更上一层楼,实现了完全可视化。如果说界面可视化给应用开发效率的提升带来了一次飞跃,那么代码可视化再次给应用开发效率的提升带来了又一次飞跃。
组件计算是一个全新的计算领域,但也是计算发展的必然趋势。结合检索、模式匹配和控制机制,构件操作将是未来知识系统的基础。
本文到此结束,希望对大家有所帮助。