脚本或编程语言?

可能重复:
什么时候语言被认为是一种脚本语言?

编程和脚本语言有什么区别? 我曾经在C / C ++上工作了一段时间,现在我开始研究Python,我被告知这是一篇很好的脚本语言。

但是,当我学习时,我发现到现在为止所有可以用C完成的事情都可以用Python完成! 那么脚本和编程语言之间真正的真正区别是什么?


我确实相信这个问题有点误导。 当然,脚本语言也是一种编程语言。 但有不同之处:

编译和解释语言之间。

传统上,像c这样的语言被编译成可以直接被CPU理解的机器代码。 另一方面,“脚本语言”通常不会在执行前被编译成机器代码,而是使用解释器进行解释。 解释型语言的优势通常在于它具有更快的开发周期,因为不需要编译,并且从一个平台移动到另一个平台更容易。 例如,python脚本可以在windows,linux,mac上执行而无需更改。 另一方面,编译语言的优点是通常执行得更快。

我经常使用“通常”和“传统”,因为现在有技术使得绘制线更加困难。 例如,可以将python代码直接编译为本地代码,并且还有用于c代码的解释器。 此外,“Just In Time”编译器和虚拟机使得在这里绘制黑白图像更加困难。

更多:http://en.wikipedia.org/wiki/Interpreted_language

鸭式和强类型语言

通常脚本语言是duck-typed,这意味着一个变量可以被分配任何类型,并且没有或只有可选的类型检查。 在C和C ++等另一端的编译语言中,每个变量都是键入的,它只能保存该类型的值。 鸭类型语言的优点通常是它需要较少的物理类型和较少的代码(例如类型名称可以留给函数声明等),并且编写可重用函数更容易。 强类型语言的优势通常是在程序员运行应用程序之前“帮助”程序员发现错误。 例如,编译器会抱怨类型错误,而不需要运行发生错误的具体行。 特别是在有许多贡献者的大型项目中,这可以成为一个惊人的优势。

更多:http://en.wikipedia.org/wiki/Duck_typing

链接地址: http://www.djcxy.com/p/72331.html

上一篇: scripting or programming language?

下一篇: What Languages are Windows, Mac OS X and Linux written in?