Technical Notes 1

Free Talk

​ 我发现自己每天都会在实验,或者编程,或者一些知识点上遇到困惑,但是之前总是简单百度看一下就过去了。今天我突然想另开一个专栏,用于记录自己每天的一个简单的知识收获,方便自己加深印象以及后续查阅。这一专栏的文章知识点都比较零碎,更多地是给自己做记录,打算之后有空每天都更新一篇。

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

​ 编译型语言代表:C,C++

​ 解释型语言代表:JS,PHP

私以为不应该用编译型和解释型来区分一门语言,不过这次不打算再细究下去。

共同点:都是高级语言,都需要变为二进制代码才可以执行,区别在于转化的方式

从效果来看

编译型型语言需要通过某个编译器,生成一个exe二进制文件执行

解释型语言直接发出效果

运行的时候是否需要编译器

编译型语言最终运行的是二进制代码,不需要编译器

解释型语言需要边解释边运行,例如HTML文件需要浏览器这种解释器阅读

执行速度对比

编译型语言因为是二进制代码,速度快

解释型语言,比较慢,就比如网页的加载时只有文字没有图片等等

可移植性

编译型语言一旦CPU指令系统改变,之前的二进制文件就可能无法运行,可移植性差

解释型语言是在需要的时候才开始编译、运行,自然具有可移植性

升级上对比

编译型语言的二进制文件如果要升级,必须重新下载一个新的二进制文件

解释型语言直接刷新网页就好了

应用领域

编译型语言通常是安装软件

解释型语言通常是互联网、网站

实时采集

编译型语言没有做实时采集,选择一次性解决问题

解释型语言做实时采集,边解释、边运行

总结

主要是在知乎上看到了这篇文章,我觉得分析区别的角度比较新颖,自己粗略记录了下来,原文链接:编译型语言和解释型语言区别之我见 - 宁哥的文章 - 知乎 https://zhuanlan.zhihu.com/p/26302914