脚本语言和编译语言的区别【转】

(转自:https://blog.csdn.net/m0_37338590/article/details/75209061

之前学了很多语言,例如c,c++,Java,c#,Python,突然想知道他们是怎么分类的,突然有疑问什么是编译语言,什么是脚本语言,查了一些资料,有了简单的初步了解,下面是总结的一部分内容,如果有什么问题敬请指正!

什么是脚本语言?

  1. 脚本语言是一种介于标记语言和编程语言之间的语言,没有编程语言复杂、严谨的语法和规则。

  2. 脚本语法比较简单,比较容易掌握,与编程语言也有许多相似之处,其函数与编程语言比较相似一些。与编程语言之间最大的区别是编程语言的语法和规则更为严格和复杂一些。

  3. 脚本语言是解释性的语言,例如Python、javascript(目前接触过的)等等,它不象c\c++等可以编译成二进制代码,以可执行文件的形式存在。而脚本语言不需要编译,可以直接用,由解释器来负责解释。

什么是编译语言?

  1. 编译语言是程序在执行之前需要一个专门的编译过程,运行时不需要重新编译,直接使用编译的结果就行了,脱离其语言环境独立执行。程序执行效率高,使用方便。但程序一旦需要修改,必须先修改源代码,再重新编译生成新的目标文件才能执行。因需依赖编译器,故跨平台性差些。例如之前提到的C,C++,Java,c#等

两者的区别:

  1. 抽象的级别不同:脚本语言更抽象。在脚本语言中,存在有高级的数据结构,如列表和字典结构,和对这种结构简单方便的嵌套和操作。编译语言有比较明确的定义等等。

  2. 类型定义不同:脚本语言对类型的定义就比较松散,不需要类型声明,而且在运行时自动进行动态类型检查。而编译语言通常是强类型定义或静态定义,也就是说变量的类型在程序中指定了。

  3. 执行方式不同:脚本语言是解释成指令被立即执行。这样完全将编译过程从编辑-编译-运行循环中去掉了。而编译语言的程序被编译成可执行的二进制。

  4. 运行速度不同:脚本语言是解释执行的,在运行时解释每一条语句然后执行。这样比编译执行的语言要慢。而编译语言因为编译成机器码,可以直接运行,所以在运行速度上快比较快。

展开阅读全文

没有更多推荐了,返回首页