当前位置:  开发笔记 > 编程语言 > 正文

"脚本"和"应用程序"之间有什么区别?

如何解决《"脚本"和"应用程序"之间有什么区别?》经验,为你挑选了5个好方法。

我指的是这个答案中的区别:

... bash不是用于编写应用程序,而是脚本编写.当然,您的应用程序可能有一些内务处理脚本,但不要写,critical-business-logic.sh因为另一种语言可能更适合这样的东西.

作为使用多种语言的程序员,这似乎是C,Java和其他编译语言的势利.我不是在寻求加强我的意见或手工波澜的答案.相反,我真的想知道提到了哪些技术差异.

(我在日常工作中使用C,所以我不仅仅是防守.)



1> Jeff..:

传统上编译程序并解释脚本,但这不再重要.如果你真的想要,你可以生成大多数脚本的编译版本,并且实际上解释了像Java这样的其他"编译"语言(在字节代码级别).

更现代的定义可能是程序旨在由客户(可能是内部程序)使用,因此应包括文档和支持,而脚本主要供作者使用.

网络是一个有趣的反例.我们都喜欢用Google搜索引擎查找内容.创建它引用的"数据库"的大部分代码仅由其作者和维护者使用.这会使它成为一个脚本吗?



2> Bernard..:

我会说应用程序倾向于以交互方式使用,其中脚本将运行其路线,适合批处理工作.我不认为这是一个具体的区别.


我想我同意这个答案.我意识到询问脚本与编程语言可能会更好.

3> Thilo..:

通常,它是"脚本"与"程序".

我和你在一起,这种区别主要是"编译语言势利",或者引用拉里·沃尔并采取另一面,"剧本是演员所拥有的,一个节目是给观众的".


+1"脚本是演员所拥有的,一个节目是给观众的".

4> coobird..:

这是一个有趣的话题,我认为对于区分"脚本"和"应用程序"没有很好的指导.

让我们看看一些维基百科的文章,以了解这种区别.

脚本(维基百科 - >脚本语言):

脚本语言,脚本语言或扩展语言是控制软件应用程序的编程语言."脚本"通常被视为与"程序"不同,"程序"独立于任何其他应用程序执行.同时,它们与应用程序的核心代码不同,后者通常以不同的语言编写,并且通过最终用户可访问,它们使应用程序的行为能够适应用户的需要.

应用程序(维基百科 - >应用程序软件 - >术语)

在计算机科学中,应用程序是一种计算机程序,旨在帮助人们执行某种类型的工作.因此,应用程序不同于操作系统(运行计算机),实用程序(执行维护或通用琐事)和编程语言(用于创建计算机程序).根据设计的工作,应用程序可以操作文本,数字,图形或这些元素的组合.

阅读上述条目似乎表明,区别在于脚本由另一个软件"托管",而应用程序则不是.我认为可以争论,例如控制shell行为的shell脚本,以及控制解释器执行所需操作的行为的perl脚本.(我觉得这可能有点延伸,所以我可能不完全赞同它.)

归根结底,我认为可以根据计划的规模进行口语化的区分.与应用程序相比,脚本的规模通常较小.

此外,就目的而言,脚本通常执行需要处理的任务,例如,构建脚本,其为特定软件产生多个发布版本.另一方面,应用程序旨在提供更精确和面向最终用户的功能.例如,记事本或Firefox.



5> 小智..:

John Ousterhout(TCL的发明者)在http://www.tcl.tk/doc/scripting.html上有一篇很好的文章,他提出了系统编程语言之间的区别(用于实现构建块,强调正确性,类型安全性) vs脚本语言(用于组合构建块,强调对不断变化的环境和要求的响应,轻松转换文本表示).如果你使用那个分类系统,那么99%的程序员正在做的工作更适合脚本语言而不是系统编程语言.


关于Stack Overflow机制的PS:我认为这篇文章是相关的,值得注意的是值得一提,但是有一个令人不舒服的"派对结束,每个人都回家了"的感觉是关于添加一个主题,其答案聚集到48分钟四个月前.
然而,在此之后的某个时间我们就是这样.
推荐阅读
linjiabin43
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有