当前位置: 首页 > 科技观察

人生苦短,我用Chrome!

时间:2023-03-14 00:25:44 科技观察

在今年举办的WWDC大会上,苹果点名踩竞争对手,抬高自己。别人用这种下流的营销手段屡见不鲜,但这就是一个伟大而神圣的苹果。有点不舒服。其中,发布会上发布了这样一张图片,想必大家也看到了:看到这张图片的第一感觉就是:靠,太牛了!但是,我为什么不相信。虽然我相信苹果造假的可能性不大,但是却没有提到这个结果是怎么得来的,难免让我心存疑虑。80%是怎么出来的?只谈结果,不谈数据来源,就是耍流氓。本着求真务实的精神,我查找资料,终于搞清楚这80%是从哪里来的。在此之前,我得给大家科普一下。浏览器之所以能够工作,是因为它的核心是一个叫做“内核”的东西。这个内核类似于汽车的引擎。没有它,浏览器将无法工作。市面上的内核种类繁多,如:KHTML、Presto、Trident、WebKit等,知名浏览器如Firefox、IE、Opera、Chrome、Safari等使用不同的内核,而Chrome和Safari浏览器使用同一个内核,叫做“WebKit”,WebKit其实是苹果公司在开源内核KHTML的基础上修改的,也是开源的。内核其实分为两部分:渲染引擎??和js引擎。渲染引擎主要负责获取网页的html、xml、图片、css等内容进行渲染展示,js引擎负责解析javascript语言实现网页的动态效果。虽然Chrome也是基于WebKit内核,但是谷歌一开始觉得WebKit自带的js引擎性能有问题,所以谷歌专门为Chrome创建了一个名为“V8”的js引擎,所以在内核方面,Chrome和Safari的主要区别在于js引擎不同,但即使js引擎不同,以谷歌的技术实力,让自己的js引擎比WebKit慢那么多也说不过去?终于在WebKit官网上找到了原因。今天发表了一篇文章,地址在这里:https://webkit.org/blog/7536/jsc-loves-es6/本文介绍了WebKit对javascript核心语言标准ES6的深度优化***,市面上大部分浏览器的稳定版都是基于ES5的,Safari开发版使用了优化后的新技术ARES-6,在线测试Chrome版和他们的开发版对比,返回测试截图来了out:看到没,Chrome的运行时间正好是Safari的1.8倍,至此,我终于明白苹果的80%的速度是怎么来的了。到目前为止,你想通了吗?让我为您总结一下。也就是说苹果在WWDC大会前一天发布了这篇文章。最新的WebKitjs引擎针对ES6进行了深度优化并应用在我下载的Safari开发版,然后与未针对ES6进行优化的Chrome在线版进行对比。最后得出结论,Safari在js执行效率上比Chrome快80%,然后在WWDC上欢呼。真的,当我知道真相的时候,我忍不住想笑。有人问Chrome没有针对ES6做优化吗?当然有,不过当时还是Chrome的开发版,并没有正式发布。然而在WWDC之后,谷歌不服,迅速更新了一个版本的Chrome。哈哈……不过,Apple也不过是自我放纵罢了。前阵子,andreasgal.com发布了一份近六年来浏览器市场份额变化的数据。结果,所有其他浏览器都失败了。Chrome的市场份额***:有人可能会质疑Chrome的市场份额领先这么多,难道是Android的缘故,那么下图只是PC桌面市场的份额,应该有足够的说服力:数据来源见这里:https://andreasgal.com/2017/05/25/chrome-won/我是Chrome的铁杆粉丝。我用过其他浏览器。最后,我还是觉得Chrome真的好用。其他浏览器和Chrome之间还是有差距的。主要表现在:1.Chrome的开发者支持真的很强大。内置的ChromeDevTools简直不要太好用,堪称web开发必备工具;2、Chrome插件太多,基本上只有你想不到,没有你找不到的插件,各种好用的插件可以让你的工作和生活更加丰富多彩;3、Chrome有很多实用的细节,比如在地址栏输入zhihu.com,按tab键构建,会直接打开知乎里的搜索;又如快捷键Cmd+Shift+T(windows系统为Ctrl+Shift+T)可以安全返回上次访问的页面;4.Chrome很快,真的很快。假设Safari的js引擎比Chrome快80%,但你仍然会觉得Chrome更快。原因是由于我们访问网站的速度,我们无法在内核中感知到一点性能差异。***速度瓶颈可能来自于网络传输,Chrome对网络传输进行了大幅优化。例如,Chrome有一个强大的预测系统。当你输入一个网址时,Chrome可以预测你要输入的网址,并提前进行DNS解析和预加载,所以很多时候你输入一个网址,你会觉得要秒,更何况Safari快了80%比Chrome的js引擎,简直是自我放纵。不过这一系列针对网络的优化措施也是有代价的,会导致过多的内存占用和CPU消耗,所以很多时候你能感觉到这就是Chrome耗资源的原因。但是,我认为这是一个小问题。更改配置拥有一台稍微高一点的电脑让你的上网体验更快是非常值得的,尤其是对于开发者来说。如果吃饭的家伙都不愿意投资,你的工作学习怎么可能更有效率?不知道现在有多少人已经在用Chrome了,作为一个已经用了6、7年Chrome的忠实粉丝,我必须呼吁那些没有用过Chrome的同学们,人生苦短,请使用铬合金!稿件转载请联系原作者(微信ID:googdev)】点此查看该作者更多好文