微软为何决定开源其新一代浏览器的JavaScript引擎核心代码?

avatar
作者
猴君
阅读量:0
微软已经开源了新一代浏览器的JavaScript引擎核心代码,以促进技术创新和社区贡献。

微软近日宣布将开源其新一代浏览器Microsoft Edge的JavaScript引擎Chakra的核心组件,这一消息引发了广泛的关注,因为Chakra作为Microsoft Edge的重要组成部分,其性能和功能对开发者社区具有极大的吸引力。

微软为何决定开源其新一代浏览器的JavaScript引擎核心代码?

Chakra简介及背景

Chakra是微软在2008年创建的JavaScript引擎,旨在为现代Web应用提供所需的性能特性,并能够轻松适应各种不断出现的场景,为了实现这些目标,Chakra采用了一种独特的多层管道架构,包括一个解释器、一个多层架构的后台JIT编译器和一个可以并发和局部回收的标记清除垃圾收集器。

自创建以来,JavaScript已经从主要用于Web浏览器的语言成长为支持商店应用、服务器端应用、云服务、NoSQL数据库、游戏引擎、前端工具和IoT等多种场景的语言,微软一直在不断改进和优化Chakra,使其不仅能够很好地适应这些场景,还能在所有这些场景中提供卓越的体验。

Chakra的基本架构

Chakra的基本架构包括以下几个关键组件:

1、解释器:负责快速启动和运行JavaScript代码,提供卓越的用户体验。

2、多层架构的后台JIT编译器:用于优化JavaScript代码的执行效率。

3、标记清除垃圾收集器:可以并发和局部回收内存,提高内存管理的效率。

ChakraCore的特点

此次开源的项目名为ChakraCore,是一个全功能、自包含的JavaScript虚拟机,可以嵌入衍生产品及用于诸如NoSQL数据库、生产力软件、游戏引擎这类需要脚本语言的应用程序,与Chakra相比,ChakraCore主要有以下两点不同:

1、未将私有绑定暴露给浏览器和通用Windows平台:这意味着ChakraCore更加专注于核心功能,减少了不必要的依赖和复杂性。

2、用一组新的现代化诊断API取代了基于COM的诊断API:这有助于开发者更方便地监控和调试JavaScript代码的执行。

Chakra的应用范围

除了在Microsoft Edge浏览器中的应用外,Chakra还广泛应用于通用Windows应用、Azure DocumentDB、Cortana、Outlook.com及TypeScript(做过专门优化)等多个领域,微软还使Node.js可以使用Windows 10上的Chakra,从而使开发人员可以在新IoT平台Windows 10 IoT Core上使用Node.js。

Chakra的性能优势

随着Windows 10的发布,Chakra在Microsoft Edge中提供了更好的JavaScript性能,并在其他浏览器提供商所拥有的基准测试中也表现出色,Chakra还支持大部分ECMAScript 2015(即ES6)特性,并支持部分ECMAScript提案特性,如Async Functions和SIMD,它还支持asm.js,其团队在WebAssembly及其相关基础设施的发展中发挥了重要作用。

FAQs

1、问题:ChakraCore目前是否只支持Windows平台?

回答:是的,将在1月份发布的ChakraCore版本仅限于Windows,但微软承诺会将其带到其他平台。

微软为何决定开源其新一代浏览器的JavaScript引擎核心代码?

2、问题:ChakraCore与Chakra的主要区别是什么?

回答:ChakraCore与Chakra相比,主要区别在于未将私有绑定暴露给浏览器和通用Windows平台,以及用一组新的现代化诊断API取代了基于COM的诊断API。

3、问题:ChakraCore遵循哪种许可协议?

回答:ChakraCore遵循MIT许可协议。

微软开源Chakra的核心组件对于开发者社区来说是一个重大利好,ChakraCore作为一个全功能、自包含的JavaScript虚拟机,不仅具有卓越的性能和功能,还具有广泛的应用范围和良好的可移植性,随着ChakraCore在其他平台的推出,相信它会为更多的开发者带来便利和价值。


微软开源新一代浏览器的JavaScript引擎核心代码

微软近期宣布开源了其新一代浏览器的JavaScript引擎核心代码,这一举措旨在促进Web技术的创新和开源社区的共同发展。

代码名称

Chakra:微软的JavaScript引擎,用于IE和Edge浏览器。

ChakraCore:Chakra的轻量级版本,专门为现代Web浏览器设计。

开源详情

微软为何决定开源其新一代浏览器的JavaScript引擎核心代码?

1、开源许可:ChakraCore代码遵循Apache 2.0许可协议。

2、开源平台:代码托管在GitHub上,便于开发者访问和贡献。

核心特性

高性能:ChakraCore旨在提供高性能的JavaScript执行环境。

跨平台:支持Windows、Linux和macOS等多个操作系统。

模块化:设计上采用模块化,便于维护和扩展。

开源意义

促进创新:开源代码允许开发者对引擎进行定制和改进,推动Web技术的发展。

社区协作:通过开源,微软可以与全球开发者共同协作,提升产品的质量和性能。

排版示例

 ++ | 微软开源新一代浏览器的JavaScript引擎核心代码     | ++ |                                                  | | 微软近期宣布开源了其新一代浏览器的JavaScript引擎核心代码。 | | 这一举措旨在促进Web技术的创新和开源社区的共同发展。     | ++ | 代码名称                                             | | Chakra:微软的JavaScript引擎,用于IE和Edge浏览器。     | | ChakraCore:Chakra的轻量级版本,专门为现代Web浏览器设计。 | ++ | 开源详情                                             | | 开源许可:ChakraCore代码遵循Apache 2.0许可协议。       | | 开源平台:代码托管在GitHub上,便于开发者访问和贡献。     | ++ | 核心特性                                             | | 高性能:ChakraCore旨在提供高性能的JavaScript执行环境。   | | 跨平台:支持Windows、Linux和macOS等多个操作系统。       | | 模块化:设计上采用模块化,便于维护和扩展。             | ++ | 开源意义                                             | | 促进创新:开源代码允许开发者对引擎进行定制和改进,推动Web技术的发展。 | | 社区协作:通过开源,微软可以与全球开发者共同协作,提升产品的质量和性能。 | ++

微软开源新一代浏览器的JavaScript引擎核心代码,是推动Web技术发展的重要一步,这一举措有望进一步促进开源社区的成长,并为用户提供更优质的Web浏览体验。

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!