编程语言发展

一、面向机器的语言

       最开始的时候,每种计算机都有自己的机器指令。例如,某种型号的计算机用8位二进制信息10001010表示加法指令,等等。所以用这种机器语言进行程序设计是很累的工作,而且代码难以阅读和理解,还有就是可能同样的任务,不同的计算机之间指令有所不同。后来用一些简单的符号来代替二进制指令,但汇编语言仍是面向机器的语言,需针对不同的机器来编写不同的代码。习惯上称机器语言、汇编语言为低级语言。

二、面向过程语言

    20世纪60年代出现了过程设计语言,如c语言等。语言把代码组成叫做过程或函数的块,每个块的目标是完成某个任务。这样的语言的好处是,不必再去考虑机器指令的细节,过程语言的语法更接近人们的自然语言,人们只需按照自己的意图来编写各个函数,而习惯上称过程语言为高级语言。

三、面向对象语言

        对于许多应用型问题,人们希望写出易维护、易拓展、易复用的程序代码。过程语言只有解决问题的过程(方法),而没有指明对象。那么因此面对对象语言的一个简单理念就是:需完成某种任务时,首先想到,谁去完成任务,即那个对象去完成任务;提到数据,首先想到这个数据是哪个对象的。

       
        面向对象编程主要体现三个特征:封装性、继承、多态。


 一.  机器语言:最初的计算机所使用的是由“0”和“1”组成的二进制数,二进制是计算机的语言的基础。计算机发明之初,计算机只能被少部分人使用,人  们需要用0、1组成的指令序列交由计算机执行,对于机器语言的使用与普及都是很令人头疼的问题。对于程序的移植能力几乎没有,从而时间成本,人力成本十分昂贵。但机器语言也不是没有优势,由于这种语言是直接对计算机硬件进行操作,所以在特定型号的计算机上面,运算效率也是很高的,机器语言的出 现对于未来的计算机语言发展起到了很好的推动作用,所以机器语言也是第一代计算机语言。


二.  汇编语言:汇编语言是在机器语言的基础上诞生的一门语言,用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,这也提高了语言的记忆性和识别性。对于程序的开发与维护起到了积极作用。汇编语言同样也是直接对硬件进行操作,这样依然局限了它的移植性。但是使用汇编语言针对计算机特定硬件而编制的汇编语言程序,对于计算机硬件的功能和特长的发挥已有了很大进步,它精炼而质量高,所以至今仍是一种常用的程序开发语言。


三.  高级计算机语言:在与计算机的不断交流中,人们对计算机程序的移植性需求不断提高,此时急需要一种不依赖于特定型号的计算机的语言,用这种语言编写的程序能在在各种平台都正常运行。从最初的语言诞生至今,已经相继出现了几百种语言。高级语言的发展也从最初的结构化语言发展成为面向过程语言设计和面向对象语言设计。面向过程语言设计的代表有:C语言,Fortran,cobol,pascal,ada等等一系列语言,而面向对象语言设计的代表则为:java, c++,c#等。


对于面向过程的程序来说,执行顺序是流水线似的,在一个模块被执行完成前,人们不能干别的事,也无法动态地改变程序的执行方向,这恰恰与人们的日常处理事情的方式相矛盾。而对于面相对象的程序设计来说,很好的将事物象的部分抽取归类,各个累与模块之间能相互组合,完成特定的功能,同时又能重复使用。对使用者的技术要求也相对降低。

猜你喜欢

转载自www.cnblogs.com/cleverle/p/9907217.html