语言的性能 [ 新手入门 ]
语言只负责描述一个程序,而程序运行的速度,其实很大程度上不取决于语言,而主要取决于算法和编译器的质量。
以JavaScript为例,JavaScript语言以ECMA-262规范作为语言定义,而具体的解释器由各个浏览器的JavaScript解释器(也叫JavaScript引擎)来解释。JavaScript曾经被认为性能不佳,但是由Chrome公司开源的v8 JavaScript引擎带来了很高的性能。
v8引擎与传统JavaScript引擎的解析流程有所不同。传统JavaScript引擎通常先把JavaScript代码编译成字节码(Bytecode,是一种中间码),然后再通过字节码转译为机器码。v8引擎直接把JavaScript代码编译成机器码,所以性能得到了很大提高。而且v8还使用了一些其他的优化技术,比如优化的垃圾回收器和缓存策略。
编译器和语言基本上是两码事。同一个语言可以有很多不同的编译器实现,每个编译器生成的代码质量都可能不同,所以您没法说“A语言比B语言快”,只能说“A语言的X编译器生成的代码,比B语言的Y编译器生成的代码高效”。这几乎等于什么也没说,因为B语言可能会有别的编译器,使得它的代码更高效。
共 0 条回复
没有找到数据。
PHP学院的中学生
注册时间:2018-10-23
最后登录:2024-09-23
在线时长:168小时13分
最后登录:2024-09-23
在线时长:168小时13分
- 粉丝29
- 金钱4725
- 威望30
- 积分6705