Young87

当前位置:首页 >个人收藏

脚本语言和编程语言的区别

 

脚本语言不需要显式的进行编译的一门语言。

例如,在编写C语言程序时候,在运行之前需要经过编译和链接的过程。但对于一些脚本语言,例如javascript,你不用编译一个JavaScript程序,比如shell脚本,也不要编译,直接通过解析器进行解析执行即可。

在现代硬件和编译技术下,编译的效率更高,花费时间更短。从而导致脚本语言和传统的编程语言之间的界限不再那么明显

需要注意的是,一个语言是不是"脚本"不应该只从语言角度去看待,应该从运行所在的环境去区别。你完全可以写一个C语言的解释器,把C语言作为输入让解释器来帮你完成执行。同样也可以将JavaScript编译成机器代码并且存放在可执行文件中.Ruby就是一个很好的例子,它以一个解释器(脚本语言)出现,但现在已经有多个编译器可以编译它了.

"脚本"语言例子(传统的角度)

  • Lua
  • JavaScript
  • VBScript and VBA
  • Perl

传统需要编译的例子:

  • C
  • C++
  • D
  • Java(需要注意,Java被编译成字节码(bytecode),这些字节码会在运行的时候解释)

Python有两种情况:Python在广泛的使用中不需要编译,但是主要的实现(CPython)需要编译成字节码并且运行字节码在虚拟机中,它可以把字节码写入到文件(.pyc.pyo)中,使用时,不需要重新编译

当然这里只是冰山一角,更多的内容有待探索.

除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog

上一篇: Linux 编写一个简单的Shell脚本

下一篇: Linux 探索之旅 | 第五部分第一课:Vim 岂是池中物,宝剑锋从磨砺出

精华推荐