atom-shell: GitHub 开源的跨平台桌面应用框架(基于 Node.js 和 HTML 5)

发布时间:2019-06-18 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了atom-shell: GitHub 开源的跨平台桌面应用框架(基于 Node.js 和 HTML 5)脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

atom-shell是 GITHub 随 Atom 一起开的跨操作系统(Windows,Linux,MacOS X)的利用 Web 技(Node.js、JavaScript、HTML 5)开发桌面应用的框架。Atom即构建在 atom-shell 之上。

与 Node-webkit 的区别

atom-shell 和 Node-Webkit 很像,那么两者有什么区别呢?

1. 程序入口

Node-Webkit 的程序入口是一个网页,你在 package.json 中指定主页,然后这个主页会在浏览器中打开,作为应用程序的主窗口。

atom-shell 的程序入口则是一个 JavaScript 脚本,而不是直接指定一个 URL。你需要手动创建浏览器窗口,并通过相应的 API 加载 htML 文件。你同时需要监听窗口事件以便决定何时退出应用。

因此,atom-shell 更接近 Node.js 运行时,API 也更加底层,你可以利用 atom-shell 进行 web 测试,类似 phantomjs

2. 编译系统

atom-shell 使用 libchromiumcontent 访问 chromium 的 Content API,这样编译 atom-shell 的时候就不用编译整个 Chromium (编译 Chromium 非常费时)。

顺便提一下,GitHub 开发者还创建了 brightray 库,让 libchromiumcontent 的使用更方便。

3. Node 集成

Node-Webkit 的 Node 集成需要给 Chromium 打补丁才能工作。atom-shell 通过集成 libuv loop 和 平台的 message loop 避免给 Chromium 打补丁。

4. Multi-context

Node-Webkit 创造了 Node context 和 web context 的概念,而 atom-shell 没有引入新的 context,而是直接使用 Node 的 Multi-context 特性(这一特性是 Atom 开发者赞助 Node 添加的)。

作者

GitHub 最初考察了 Node-Webkit,但是最终还是决定雇佣 @zcbenz 来开发想要的框架。于是 atom-shell 诞生了。

@zcbenz 真名赵成,是杭 JS 的讲师,有兴趣和他交流的可以报名 杭JS哦。

相关链接


编撰 SegmentFault

脚本宝典总结

以上是脚本宝典为你收集整理的atom-shell: GitHub 开源的跨平台桌面应用框架(基于 Node.js 和 HTML 5)全部内容,希望文章能够帮你解决atom-shell: GitHub 开源的跨平台桌面应用框架(基于 Node.js 和 HTML 5)所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。