为什么中国没有浏览器内核,浏览器开发很难吗

即三叉戟内核2 。Opera Blink内核3 。Safari Webkit内核4 。火狐内核5 。Chrome Blink内核国内浏览器都是基于以上主流浏览器的内核 , 比如 。
为什么说中国还没有自主研发的浏览器内核?浏览器开发很难吗?

为什么中国没有浏览器内核,浏览器开发很难吗


确实很很难 , 开发浏览器内核就好比开发一个新系统一样 , 这个内核的技术点在于不同的渲染技术 , 和对当前市场上内容的处理标准确立 。当前市场上已经设立了统一的行业标准 , 所有内容数据都在根据这个标准发布 , 如果我们强行开发出来 , 也会因没有内容适配而淘汰 , 所以在现有开源技术下二次开发才是硬道理 , 这才是站在巨人的肩膀上成长 。
为什么中国目前没有以自主研发的内核运行的浏览器?
做前端的 , 分享一下我的看法 。首先 , 这玩意不像操作系统那么复杂 , 做一个不用很费人力和财力 , 不做是因为没有必要 。浏览器内核最主要的有两部分 , 其一是渲染引擎 , 主要是将html和css代码合并为渲染树并调用平台的绘图接口绘制到浏览器上 , 也就是你看见的网页 。早前我们用的比较多的是IE浏览器用的叫Trident , Safari浏览器用的是webkit , 这个webkit是苹果自己发明的 , 性能比较强悍而且开源 , 所以刚开始Chrome浏览器也用这个 , 后来Chrome觉得这个玩意还是自己搞比较好 , 所以呢在webkit的基础上搞了一个叫做Blink 。
上面说的这个这个渲染引擎不是很复杂 , 只要按着w3c的标准很快能搞一套出来 , 标准会告诉你遇到什么情况怎么绘制 , 当然也有一些情况标准没有说明 , 这种情况呢各家的渲染引擎就按着自己的理解来绘制了 , 所以你有时候会看到同样的网页在不同的浏览器显示稍有差别就是这个原因 , 总的来说 , 这个东西并不是很复杂 , 一个20个人的团队全力以赴的话可能两个月就能搞出一个demo来 。
浏览器另一个比较重要的引擎叫做js引擎 , 就是运行js代码的一个平台 , 你在网页中点击触发的效果 , 还有网页中的动效有很多都是js做的 , 这玩意专业术语叫js虚拟机 , 这个东西呢 , 也不是很复杂 , 在2008年之前chrome浏览器还没面世的时候 , 市面上主要有IE , Firefox和Safari三款浏览器 , 但是这三款浏览器的js引擎性能差别不是很大 , 因为他们都是将js代码解析执行的笼统地说 , 知道的不要较真 , 这就相当于你不懂一门外语 , 旁边的外国人说一句 , 你的翻译帮你翻译一句 , 等你理解了在进行下一句 , 所以效率比较低 , 而好处是实现简单 。
Chrome问世之后 , 人们才知道js也可以这么快 , Chrome中内嵌的js执行引擎叫做V8 , 意为该引擎像汽车中的V8引擎一样牛逼 , 事实也确实是这样 , 因为它借鉴了其他语言虚拟机的实现 , 做了一系列的优化 , 所以它真的很快 , 有一组真实的数据表明 , 它的平均速度大概是其他引擎的20多倍 , 它的原理呢 , 就像是外国人把所有的话都说完了 , 然后你的翻译也一口气都翻译完了 , 那你感觉不就很爽吗 , 中间没有停顿 , 但是呢也有这种情况 , 可能外国人说的时候要征求你的意见或者需要你的及时答复 , 这样就不得不回到原始的对话方式了 , 说一句 , 翻译一句 , 你听一句 , V8的情况也是类似的 , 但这种情况比较少 , 所以性能提升是相当明显的 , 正因为如此 , 才有了现在的nodejs运行在服务器上的js , 说了这么多想表明的意思是简单实现一个未优化的js引擎也是比较容易的 , 甚至都没有发明一门编程语言难 , 而且由于Chrome不严谨的说是开源的 , 所以我们实在没有必要去重复造轮子 , 要实现还是可以实现的 。

推荐阅读