ChakraCore 现在可以在 Linux 和 Mac OS 上运行了

  • Abel Avram
  • 谢丽

2016 年 8 月 1 日

话题:JavaScript微软LinuxWindows语言 & 开发

微软演示了在 Linux 和 Mac OS X 上运行 ChakraCore 以及在 Linux 上运行 Node.js/ChakraCore。

六个月之前,我们曾对 Chakra 引擎开源进行过报道。微软的目的是将其移植到其他平台,并让 Node.js 可以在上面运行。7 月 27 日,在这些天于旧金山举行的Node 峰会 2016上,微软演示了 ChakraCore 在 Linux x64 和 Mac OS X 10.9+ 上运行,其中包括在运行于 Linux x64 之上的 ChakraCore 上运行 Node.js(尚处于实验阶段)。

微软之所以开展这项跨平台工作,是为了帮助开发人员编写可以运行在 Windows UWP 和其他平台上的应用程序。UWP 是微软为了让应用程序可以跨各种不同类型的 Windows 设备运行而提出的解决方案,包括桌面、移动、IoT、Xbox、Surface Hubs 和 HoloLens。除 C#、C++ 和 Visual Basic 之外,UWP 应用程序还可以使用 HTML/JavaScript 编写,并运行在所有这些设备的 Chakra 上。由于 ChakraCore 是 Chakra 去掉了一些 Windows 相关的 API,所以,开发人员现在可以将其运行范围扩展到 Linux 和 Mac OS X 上。借助Windows Bridge for iOS,许多 iOS 应用程序都可以移植到 Windows 上,尤其是手机和平板。由于缺少一个好的应用程序生态系统,微软在这两个领域似乎没有什么发展。

微软原本计划通过Astoria项目打通 Android 和 Windows,但他们放弃了这个想法。开发人员仍然可以通过 Xamarin 将应用移植到 UWP,尽管那不是一种直观的方法。不过,考虑到大部分移动开发人员都面向 iOS 开发,他们可能不需要一个 Android-UWP 桥,如果他们有兴趣,Xamarin 足以让他们将 Objective-C 代码移植到 Windows 平台了。

按照微软的说法,除了Intl API正在开发中之外,ChakraCore 在 JavaScript 特性支持方面已经和 Chakra/Windows 不相上下。JIT 和部分 GC 特性尚不完善,但他们计划充分完善它们的功能,让它们具有和在 Windows 上同样的性能。

微软不只是将桌面应用程序作为目标,他们还希望使用一个运行在 ChakraCore 上的 Node.js 分支提供服务器应用的跨平台支持。感兴趣的读者可以从这里下载用于 Windows 和 Linux 的预构建二进制文件。

如果希望了解有关 Node.js 如何在 ChakraCore 上运行的技术细节,我们建议您阅读文章《微软开源 Chakra,并计划在上面运行 Node.js》。

查看英文原文ChakraCore Works Now on Linux and Mac OS

JavaScript微软LinuxWindows语言 & 开发