编程语言和脚本语言有什么区别?
javascript吧
全部回复
仅看楼主
level 10
西京大学 楼主
2021年10月02日 05点10分 1
level 10
西京大学 楼主
也许就是一样的吧,比如近两年火到爆的python,你就可以说它是编程语言,也可以说它是脚本语言。
2021年10月02日 05点10分 2
level 10
西京大学 楼主
如果一定要说有区别,可能只是我们提到这两个词的时候侧重点不太一样。当我们说编程语言或程序语言的时候,我们暗示了它是图灵完备的,很正式的感觉,比如会考虑软件工程,考虑软件设计方法;当我们说脚本的时候,一般是在说它可以很方便的书写与适应变化,一般是不太考虑软件工程与设计方法的。
2021年10月02日 05点10分 3
level 10
西京大学 楼主
至于是不是编译与解释,我觉得没有关系,同样是python,numpy库里用它就是编程语言,但随手写一段代码处理数据表,就是脚本。类似的,C#语言,你在工程项目里作为主要开发语言用,就是编程语言;但你也可以基于codedom库,读一段c#代码,然后在你的软件运行时,调用codedom的API来编译运行它,这时候,C#是脚本。
作者:兰翔
链接:https://www.zhihu.com/question/347537041/answer/839006064
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
2021年10月02日 05点10分 4
level 10
西京大学 楼主
另外,以上所说只是我认为的通常情况,实际上,并没有严格的定义来区分这两个词。只要你愿意,两者对调一下理解也不会违反什么规矩。
2021年10月02日 05点10分 5
level 10
西京大学 楼主
脚本语言是编程语言的子集
通常来讲,我们一般把通常通过程序、虚拟机来解释执行,而不是编译后执行的语言叫做脚本语言。脚本语言通常比较动态,通常执行相比于编译语言较慢,通常代码规模不会很大(聚焦在批量处理),通常入门门槛较低。
2021年10月02日 05点10分 6
level 10
西京大学 楼主
而编程语言范围更广,指的是通过指令来命令计算机进行某种运算或输出,指令本身就是编程语言。脚本语言是编程语言的一种形式。
2021年10月02日 05点10分 7
level 10
西京大学 楼主
并且,脚本语言的定义是模糊的。比如通过C语言解释器来执行C语言,这时候C语言是不是脚本语言?用虚拟机(比如bochs,qemu)解释执行机器码(汇编语言),那么机器码是不是脚本语言?用numba把python编译成二进制然后执行,Python是不是 不是脚本语言?
所以我们对脚本语言的定义是约定俗成的。就是这个语言一般是解释执行的,一般是用来快速批量处理的,我们就管它叫做脚本语言。
作者:level-128
链接:https://www.zhihu.com/question/347537041/answer/1366831279
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
2021年10月02日 05点10分 8
level 10
西京大学 楼主
程序是独立于你要处理的资料的:程序有自己的目录,可以处理位于不同位置的不同资料。
脚本是依附于它所处理的资料的:脚本就扔在资料所在的目录中, 脚本里会直接提及资料中的特定文件、特定目录,脱离了这个环境它就运行不了。
2021年10月02日 05点10分 9
level 10
西京大学 楼主
一句话,脚本的特点就是:就地编写,就地运行。
2021年10月02日 05点10分 11
level 7
[阴险]后者是前者的子集,你说有什么区别。
2021年10月02日 06点10分 12
1