问题
我想知道 Electron 和 JXcore 之间的主要区别是什么。
背景
我正在考虑如何将 NodeJS 服务器制作成应用程序,并且遇到了这两个问题。他们似乎做同样的事情,只是 JXcore 支持移动设备而 Electron 不支持。
附带问题
如果 Electron 不支持移动设备,那么 Slack 移动应用程序是如何创建的?
提前致谢!
最佳答案
来自 JXCore 站点( http://jxcore.com/tech/ ):
JXcore is a fork on the open source Node.js project
它使用 LLVM编译 javascript 而不是 V8 NodeJS 就是这么做的。
主要区别是什么-Electron是一个用于构建 native 跨平台桌面应用程序的框架,其中 JXCore 是从 NodeJS 派生的 JavaScript 引擎。
Electron 使用 NodeJS 和 Chromium 构建。因此为了公平起见,比较最好表述为“Electron 如何与 NodeJS 和 JXcore 一起工作”。由于我没有任何 JXCore 的经验,所以我无法回答这个问题。我敢说,了解这一点的唯一方法是 fork Electron 并用 JXCore 替换 Node。
根据您的背景,我假设您正在考虑制作一款可跨移动和桌面环境跨平台运行的应用程序。对此,我想说这是可能的,但你将有两个不同的项目。 Electron 中的某些内容您不希望包含在您的移动应用程序中,因为它们使用完全不同的操作系统。你是对的, Electron 不支持移动设备(它不是为此而构建的)。
就你的附带问题而言,slack 可以使用多种技术来创建他们的移动应用程序。他们可以使用 Java、Swift、Objective-C、.NET、Ruby 或 Javascript。
有跨平台工具,例如 RubyMotion , NativeScript , React Native ,和 Xamarin它还可以用于创建 native 移动应用程序,所有这些应用程序都可以编译成移动操作系统可以理解的 native 语言。
最后一种方法可能是使用 Cordova 等工具。/Phonegap通过“ WebView ”创建移动应用程序。从本质上讲,这就像创建一个应用程序来启动网络浏览器来与您的手机交互。
如果您正在寻找有关如何构建一次并在各处使用的示例,我会查看此处的 github 存储库 https://github.com/NathanWalker/angular-seed-advanced 。这显示了可在 Electron、Web 和移动设备中使用的通用代码库。
关于node.js - JXcore 与 Electron,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43357105/