计算机编程语言流派间的关系
计算机编程语言流派间的关系
ytkz计算机编程语言流派间的关系
摘自网络
计算机编程语言的分类:
机器语言:二进制代码
汇编语言:面向机器的程序设计语言
- 高级语言:按转换方式可分为两类:1.编译型语言; 2.解释型语言**||****按照客观系统的描述可分为两类:1.面向过程语言; 2.面向对象语言****||****按照编程范型可分为:1.命令式语言; 2.函数式语言; 3.逻辑式语言; 4.面向对象语言**
三种语言的优缺点:
机器语言:
可读性、可移植性差,编程繁杂。
直接执行,速度快,资源占用少;
- 按转换方式可分为两类:1.编译型语言; 2.解释型语言
1.编译型语言:
编译性语言写的程序在被执行之前,需要一个专门的编译过程,把程序编译成为机器语言的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执行效率高。
2.解释型语言:
解释性语言的程序不需要编译,在运行程序的时候才翻译,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就需要逐行翻译一次,效率比较低。
现代解释性语言通常把源程序编译成中间代码,然后用解释器把中间代码一条条翻译成目标机器代码,一条条执行。
关于“脚本语言:
脚本语言是一种解释性的语言,脚本语言是为了缩短传统的编写-编译-链接-运行(edit-compile-link-run)过程而创建的计算机编程语言。脚本语言一般都 有相应的脚本引擎来解释执行。 他们一般需要解释器才能运行。一个脚本通常是解释运行而非编译。脚本语言通常都有简单、易学、易用的特性,目的就是希望能让程序员快速完成程序的编写工作。而宏语言则可视为脚本语言的分支,两者也有实质上的相同之处。脚本语言一般都是以文本形式存在,类似于一种命令。例如:
解释性语言: Java、JavaScript、Perl、Python、Ruby、MATLAB等
编译性语言:C/C++、Pascal/Object、Pascal等
脚本语言:Python、JavaScript,ASP,PHP,Perl等
- 按照客观系统的描述可分为两类:1.面向过程语言; 2.面向对象语言
1.面向过程语言:
面向过程语言是以过程或函数为基础的,这种语言对底层硬件,内存等操作比较方便,但是写代码和调试维护等会很麻烦。例如:c语言
2.面向对象语言:
面向对象语言(Object-Oriented Language)是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。语言中提供了类、继承等成分。
面向对象语言的发展有两个方向:一种是纯面向对象语言,如Smalltalk、EIFFEL等;另一种是混合型面向对象语言,即在过程式语言及其它语言中加入类、继承等成分,如C++、Objective-C等
- 按照编程范型可分为:1.命令式语言; 2.函数式语言; 3.逻辑式语言; 4.面向对象语言
1.面向过程语言:
面向过程语言是以过程或函数为基础的,这种语言对底层硬件,内存等操作比较方便,但是写代码和调试维护等会很麻烦。例如:c语言
2.面向对象语言:
面向对象语言(Object-Oriented Language)是一类以对象作为基本程序结构单位的程序设计语言,指用于描述的设计是以对象为核心,而对象是程序运行时刻的基本成分。语言中提供了类、继承等成分。
面向对象语言的发展有两个方向:一种是纯面向对象语言,如Smalltalk、EIFFEL等;另一种是混合型面向对象语言,即在过程式语言及其它语言中加入类、继承等成分,如C++、Objective-C等3.逻辑式语言:
这种语言的语义基础是基于一组已知规则的形式逻辑系统。这种语言主要用在专家系统的实现中。最著名的逻辑式语言是 Prolog。
4.面向对象语言:
现代语言中的大多数都提供面向对象的支持,但有些语言是直接建立在面向对象基本模型上的,语言的语法形式的语义就是基本对象操作。主要的纯面向对象语言是 Smalltalk。