脚本和程序之间的区别?

时间:2010-02-18 05:39:27

标签: scripting

脚本和程序有什么区别?大多数时候我听说脚本正在运行,那不是程序吗?我有点疑惑,任何人都可以详细说明这个吗?

11 个答案:

答案 0 :(得分:41)

对我来说,主要区别在于脚本被解释,而程序被执行 (即首先编译源代码,结果是编译是预期的)


维基百科似乎对此赞同:

Script

  

“脚本”与核心不同   应用程序的代码,即   通常写在不同的   语言,通常是创建或在   最终用户最少修改。   
脚本经常被解释   源代码或字节码,而   他们控制的应用程序   传统上编译为本机   机器代码。

Program

  

该程序有一个可执行的表单   计算机可以直接使用   执行指令。
同样的   程序在其人类可读的来源   代码表单,从中可执行文件   程序派生(例如,编译)

答案 1 :(得分:39)

我采取了不同的看法。

“脚本”是以外部或独立方式对某个系统起作用的代码,可以在不禁用系统本身的情况下删除或禁用。

“程序”是构成系统的代码。程序的代码可以以模块化方式编写,并且关注点分离良好,但代码基本上是内部的,并且依赖于,系统本身。

脚本通常被解释,但并非总是如此。程序经常被编译,但并非总是如此。

答案 2 :(得分:11)

通常,脚本是一种轻量级,快速构建的,可能是一次性使用的工具。它通常被解释,而不是编译。 Pythonbash是用于构建脚本的语言示例。

程序是用编译语言构建的,比如C或C ++,并且由于这个原因通常比脚本运行得更快。较大的工具通常被编写为“程序”而不是脚本 - 较小的工具更容易开发为脚本,但脚本随着它们变大而变得难以处理。应用程序和系统语言(用于构建程序/应用程序的语言)具有使增长更易于管理的工具。

您通常可以在文本编辑器中查看脚本以查看其功能。你不能用可执行程序做到这一点 - 后者的指令已被编译成字节码或机器语言,这使得人们很难理解,没有专门的工具。

请注意上面“oftens”和“oftens”的数量 - 这些术语是模糊的,有时会交叉。

答案 3 :(得分:10)

请参阅:

<强> The Difference Between a Program and a Script

脚本也是一个程序,但没有隐藏(源代码)的不透明层,而程序是有衣服的程序,除非可以解压缩,否则你看不到它的源代码。

脚本需要其他程序来执行它们而程序不需要它们。

答案 4 :(得分:6)

一般来说,“程序”是编写的一系列指令,以便计算机可以执行某项任务

“脚本”是用脚本语言编写的代码。脚本语言只不过是一种编程语言,我们可以编写代码来控制另一个软件应用程序

实际上,编程语言有两种类型:

一个。脚本语言

湾编译语言

请阅读: Scripting and Compiled Languages

答案 5 :(得分:3)

脚本通常被解释(由另一个可执行文件)。

程序通常是一个独立的编译可执行文件(尽管它可能有库依赖项),包括机器代码或字节代码(用于即时编译程序)

答案 6 :(得分:1)

脚本与程序现实实际上有两个维度:

  1. 语言是否足够强大,特别是对于字符串操作,与像posix shell这样的宏处理器竞争,尤其是bash?如果运行某些功能并不比bash好,那么使用它就没什么意义了。

  2. 语言方便快捷吗? Java,Scala,JRuby,Closure和Groovy都是强大的语言,但是Java需要很多样板,并且它们都需要JVM才需要很长时间才能启动。

  3. OTOH, Perl,Python Ruby 都可以快速启动并具有强大的字符串处理功能(以及几乎所有其他操作)操作,因此它们倾向于占据了有时被贬低但不容易被侵犯的“脚本”世界。事实证明,他们在运行整个传统程序方面做得很好。

    左边是像Javascript这样的语言,它们不用于编写脚本但可能是。 更新:因为这是在多个平台上发布的node.js。在其他新闻中,问题已经结束。 “哦,好吧。”

答案 7 :(得分:1)

根据我的观点,脚本和程序之间的主要区别是:

脚本可以与其他技术一起使用。示例:PHP脚本,Javascripts等可以在HTML中使用。

程序是独立的代码块,永远不能嵌入到其他技术中。

如果我在任何地方出错,请纠正我。我会钦佩你的纠正。

答案 8 :(得分:0)

框架或其他类似架构将运行/解释脚本来执行任务。程序由机器编译和运行以执行任务

答案 9 :(得分:0)

IMO 脚本 - 是程序应该运行的那种指令 程序 - 是硬件应该运行的指令

虽然我猜.NET / JAVA字节代码是这个定义的脚本

答案 10 :(得分:0)

脚本:它包含一组“脚本语言”指令,用于控制,运行其他系统程序,应用程序也可以进行调度。

程序:它包含一组指令,在编译器编译程序时执行某些任务。

相关问题