从开发角度来说,选择用 nw.js 还是 election ,区别其实不是很大。大部分工作还是在自己的 javascript 和 HTML 上。
国内比较有名的,比如微信web开发工具、钉钉都是基于 nw.js 开发的
electron 相对来说比 nw.js 靠谱。有一堆成功的案例:
1. Atom 编辑器 2. Slack (那个独角兽公司)3. Visual Studio Code 4. WordPress 等等。。
优点:
1. 开源的核心扩展比较容易,目前是基于 node 6.x,加之现在 gyp 已经非常人性化了,使得c++ 和 js 搞基非常容易。
2. 界面定制性强,原则上只要是Web能做的他都能做。
3. 是目前最廉价的跨平台技术方案,HTML+JS 有大量的前端技术人员储备,而且有海量的现存web UI 库。大多都很靠谱。
4. 相对其他跨平台方案(如 QT GTK+ 等),更稳定,bug少, 毕竟只要浏览器外壳跑起来了,里面的问题不会太多 ,当然我也遇到过一些暗坑。
5.方便热更新。下载覆盖完事。当然这是所有脚本共有的优点。
缺点:
1.卡,启动慢,这可能是webkit的锅。毕竟一个浏览器要支持的功能确实有点多。
2.除了主进程 你可能还需要启动一些辅助进程来完成工作。而每当你新开一个进程,起步价就是一个nodejs的内存开销!
3.丢帧,这个最严重,可我已习惯了native 的丝滑. mac下感觉还可以 win下有点够呛。
4.打出来的包太大。(很显然,即便是一个空包,也至少包含了一个浏览器的体积)
nw.js 现在半死不活,弃坑吧。。 (除非你要兼容XP。。)codebye.com
如下是2016年国际友人总结的nw.js 和 election对比图,请参考codebye:
NW.js 0.16.0 | Electron 1.2.8 | |
Project inception | 2011 | 2013 |
Corporate Sponsor | Intel | GitHub |
Licensing | Open Source, MIT License | |
Browser Runtime | Chromium | libchromiumcontent |
Node.js Version | 6.3.0 | 6.1.0 |
Chromium Version | 52.0.2743.82 | 51.0.2704.106 |
Entry Point | HTML or JavaScript4 | JavaScript |
Bare Distribution Size | 139MB (52MB zipped) | 125MB (45MB zipped) |
Windows Platform Support | Windows 7+ (x86 and x64) | |
Windows XP Support | In LTS version (0.14.x) | No |
Mac Platform Support | Mac OS X.9 + | |
Mac OS X.6 | In LTS version (0.14.x) | No |
Architecture Support | 32bit (Win), 64bit (Win/Mac) & arm (limited) | |
Chrome Apps Support | Yes | No |
Support of chrome.* APIs | Yes | No |
Plugin Support | NaCL, Pepper | Pepper |
Adobe Flash Support | via Pepper Plugin | |
Mac App Store Support | Yes | |
Windows App Store Support | Yes | Windows 10+ (details) |
App signing | Yes | |
Source Code Protection | V8 Snapshot1 | ASAR Archive Support2 |
Auto-update | Unclear (module) | Mac/Win (thru Squirrel) |
Crash Reporting | No | Yes |
Kiosk Mode | Partial (Buggy on Mac5) | |
PDF Viewer | Yes | Using pdf.js |
Native Node Module Support | Yes | |
SSL Client Certificate | Yes | Partial (details) |
Print Preview | Yes | No |
DevTools Extension Support | Yes | |
Debugging | DevTools + extensions | Dedicated Devtron Module |
Integration Testing | ChromeDriver & WebDriver | Dedicated Spectron Module |
Windows Installer | Yes (nw-builder) | Yes (external module) |
html5test.com Score | 492 | |
Octane 2.0 Score3 | 27205 | 27343 |
Issue Resolution Time6 | ||
Open Issues6 | ||
GitHub Trends | ||
Open Codecs/Containers | Vorbis, Theora, Opus, VP8, VP9, PCM, Ogg, WebM, WAV | |
Licensed Codecs | MP3, MP4, H.264, AAC7 |