面试-解释器和编译器的区别 - 疯狂delphi

面试-解释器和编译器的区别

相关资料:

1.《21天学通C++ 第6版》

2.http://blog.csdn.net/touzani/article/details/1625760

一、解释器

程序员->编写->源代码->可执行命令->CPU

代表:

JavaScript

VBscript

Python

installshield script

ActionScript

特点:

1.程序员使用起来比较方便,简单、易学、易用。

2.大部分解释型程序被称为脚本。

3.解释器被称为脚本引擎。

优点:

快速开发:脚本语言极大地简化了“开发、部署、测试和调试”的周期过程。

容易部署:大多数脚本语言都能够随时部署,而不需要耗时的编译/打包过程。

同已有技术的集成:脚本语言被Java或者COM这样的组件技术所包围,因此能够有效地利用代码。

易学易用:很多脚本语言的技术要求通常要低一些,因此能够更容易地找到大量合适的技术人员。

动态代码:脚本语言的代码能够被实时生成和执行,这是一项高级特性,在某些应用程序里(例如JavaScript里的动态类型)是很有用也是必需的。

缺点:

脚本语言不够全面:它们会要求一门“真正的”编程语言的存在,必须找一个数据库驱动程序将其内置进脚本语言里。

脚本语言并不是软件工程和构建代码结构的最佳选择,例如面向对象和基于组件的开发。

脚本语言通常不是“通用”语言,但是能够根据专门的应用来调整,例如:PHP。

二、编译器

程序员->编写->源代码->编译->目标代码->链接器->可执行程序->CPU

代表:

Pascal

C

C++

Java

汉语编程

汇编语言