1.概念

编译型语言

  • 编译器(Compiler)将编译型语言的源码转换目标文件(Object file)的过程叫做编译(Compile)每个源文件都会生成一个目标文件,目标文件也是可执行文件,不过只是项目中的一部分。
  • 链接器(Linker)将所有目标文件合并成一个可执行的二进制代码的过程,叫做链接(Link)。
  • 执行时,只能执行可执行的二进制代码

解释型语言(脚本语言)
解释器不用等编译完成,它是直接将解释型语言的的源码拿过来,翻译一句,执行一句

2. 区别

它们都有翻译的意思。但是区别在于翻译的时机

  • 当我们只会母语,但是又想想阅读一本外语书,我们可以找一个翻译,给他足够的时间,让他去翻译一正本书,我们拿着翻译后的书再去阅读。这样的过程就类似于翻译性语音的编译过程。
  • 当我们不想等那么久,就可以让翻译站在旁边,你看一句,他就翻译一句。如果你回过头来,想看一个已经翻译过的内容,你依然不认识,还需要翻译者给你重新翻译。

    3. 优劣比较

    编译型语言

  • 一次性编译完成,执行速度快

  • 生成统一的二进制可执行代码,对系统的要求降低
  • 大型的操作系统、应用程序、数据库均采用它
  • 如 OC/ C/C++、Pascal、Go、汇编

解释型语言(脚本语言Script

  • 没修改源码,不用等待编译链接,可直接执行、更加灵活、部署容易
  • 翻译一句,执行一句,执行速度慢
  • 适用于对速度要求不高、对系统平台的兼容性要求高的程序,如网页
  • 如 Shell、JavaScript、Python、PHP、Ruby