【Shawn-JavaScript】编译型语言与解释型语言的区别

版权声明:本文为博主原创文章,如有转载或提问请私信 https://blog.csdn.net/ShancoFolia/article/details/79669127

解释型语言与编译型语言的区别

很多人在刚开始接触解释型语言,即脚本,时,会遇到很多的不习惯,比如为什么叫做脚本,java和JavaScript有什么样的关系,Scipt到底做了什么,读完这篇文章,我相信你也能够很好的去理解C语言与Python之间的区别(取这两个代表进行阐述)。

编译型语言,典型的有C语言,Java语言等

解释性语言,流行的JavaScript,Python,php等

先解释一下原理,C语言时需要编译器,翻译成01的代码,给机器去执行,而编译型语言是一边解释,一边执行

打个比方:假设你是一个讨好老板的员工

编译型语言:老板让你去买菜说:我需要你去买茄子或者黄瓜,水果你看着买一样就行,结果呢,茄子,黄瓜你肯定都要买,因为万一老板特别想用的是黄瓜呢,你不能惹老板生气啊,然后你买完到了水果摊,老板要水果,但没有说,怎么办呢,都买一样吧,回去再选吧。

解释性语言:老板让你去买菜:你先去菜市场,要茄子还是黄瓜,我一会儿发微信给你,等你到了菜市场,打开手机,老板告诉你他想要茄子,然后你买完了路过了水果摊,老板说:你再给我带一根海南的香蕉回来,嗯,然后你乖乖的买了香蕉。

所以我们可以发现,编译型语言为了避免犯错,他会把老板所有需要的可能性都准备一下,即编译所有,虽然可能浪费资源,很多情况不可能需要,但他执行效率特别快,并不在乎

而解释型语言虽然执行缓慢,一边解释,一边运行,但是他可以根据需求去进行解释,然后执行,只执行他需要的那一部分,不必加载所有的情况。

所以编译型语言和解释型语言谁更好,就看需求了,如果老板说你去买黄瓜和苹果,你就选编译型,如果老板说,要买的很多(星辰大海??),你去我再和你说,解释型语言就比较好了。

当然,解释性语言被称作脚本还有一个原因,就是他可以直接操作DOM,这个概念可能比较生疏,,如果你看不懂DIV的话,我换个说法,比如阴阳师的外挂,就是获取屏幕上的那些按钮,然后执行按钮绑定的click事件,如果还不懂,安卓模拟器用过吧,键盘映射效果也大概差不多,比如你按上,然后他模拟点击屏幕人物移动按钮的上边部分,实现对人物的移动,当然对DOM的操作不仅仅这么简单,利用它也可以完成很多事。

还有解释型语言之所以被提上开发,主要是因为他们的效率有了很大的提升,就用Node.js来说,本来JavaScript不用来作服务器的,但是自从有了Node.js后,运行效率几乎可以忍受了,还有就是编译型语言开发服务器所需要的程序员也比较费钱,所以企业用Python做服务器的也不少,不是有那句话么:人生苦短,所以我用Python。也就是极言Python用最少的代码,可以做更多的事情。那么问题来了,最好用的语言是什么呢?

Tips:作者还是个小白,在JavaScript的开发上还没有很多的头绪,因为刚开始接触脚本,查阅了很多资料无果,所以撰写了我自己的理解,如果有错误之处,还请大神指教。


猜你喜欢

转载自blog.csdn.net/ShancoFolia/article/details/79669127