我对HTML5,Javascript,jQuery,AngularJS有很好的经验。我即将开发混合移动应用程序。
我只是想知道哪一个是最好的。
我正计划使用IONIC,因为它也开始支持Windows。这将有多大帮助。有没有比IONIC更好的东西?
答案 0 :(得分:58)
我可以稍微改变你的问题吗?正确的应该是哪个移动应用程序框架最少。
别误会我的意思,我不是仇敌。在这一点上,我是这里贡献最多的jQuery Mobile支持者,有超过1300个答案:https://stackoverflow.com/tags/jquery-mobile/topusers。此外,我还是官方Ionic框架论坛的论坛版主:https://forum.ionicframework.com/users/gajotres/activity。所以我对这个话题非常熟悉。
首先,没有最好的移动应用程序框架。您需要的是一个尽可能接近原生移动应用程序的移动框架(我说的是性能和外观和感觉)。另外,您希望使用最有经验的JavaScript框架。
Sencha (ExtJS)已经过时了。有一次它是最好的框架。不幸的是,今天它只是肥胖而缓慢。
jQuery Mobile (jQuery)是一个活着的死人。它从来都不是一个很棒的框架,但很多人都使用它,因为它在jQuery之上工作。最后一个主要版本是3年前创建的(1.4)。下一个应该很快就会发布,但它已经过时了。让我们把它放到透视中。 Ionic在jQuery Mobile 1.4之后发布,开发人员已经在开发Ionic 2。
Ionic (AngularJS)是目前最常用的混合移动框架。它是最好的吗?离得很远。它不是很快(虽然它比目前最常见的比赛更快)。页面过渡/动画是非常糟糕的,你真的需要使用某些Cordova插件才能使它们看起来不错。这不是一切,但我不会再打扰你了。
Ionic 2 (AngularJS 2)是另一个故事。这种α产品甚至比生产就绪的Ionic更好。尽管页面转换仍然不是原生的,但我的大部分担忧都消失了。
OnsenUI (AngularJS / jQuery)是我所知道的只有体面的Ionic竞争对手。它总是比Ionic领先一步。更好的性能,没有AngularJS路由,更易于使用。不幸的是,它的用户群较小。最后但同样重要的是,它提供了比Ionic更好的桌面浏览器支持。
OnsenUI 2 (平台无关)是OnsenUI的下一个主要迭代。甚至更好的表现。平台无关,因此您可以将它与任何您喜欢的JavaScript框架一起使用。还处于测试阶段。
Titanium / Xamarin - 使用JavaScript或C#代码创建完全原生的移动应用程序。一方面,您将收到一个真正的原生应用程序。不幸的是,这些应用程序通常容易出现内存泄漏,而且与HTML5和CSS混合移动框架相比,您无法将它们设置在同一级别上。
Native Script / React Native - 这些框架是另一种特殊情况。我称之为真正的混合移动框架,主要是因为他们的最终结果是具有JavaScript背景的本机应用程序。它们提供了两全其美的优势,但它们也需要大量的时间来掌握。另外,它们通常比真正的原生应用程序慢10-20%,主要是因为Javascript< - >本机代码抽象。
我的建议。如果您已经设置了AngularJS,那么如果您愿意等待发布候选版本,请使用Ionic或Ionic 2。另一方面,如果您更喜欢使用jQuery而不是AngularJS,那么请使用OnsenUI或OnsenUI 2。
答案 1 :(得分:12)
这个问题对于这种格式来说过于宽泛,超出了本网站的范围并显示缺乏研究:
所以事实上它是
(a)Cordova vs. Titanium
(b)如果是Cordova,那么ExtJS vs. IONIC vs. JQuery Mobile
到目前为止我只使用过ExtJS,所以我无法对其他框架发表评论。看看一些示例代码(实现按钮,字段,列表或网格以及您的应用程序所需的任何其他内容),尝试理解它,并找到适合您的代码。
答案 2 :(得分:2)
我有偏见是因为我为Codename One工作,这在某些方面类似于仅离子本机而且使用Java而不是JavaScript。你可以embed a PhoneGap/Cordova/ionic app into Codename One to get a native app。
如果您更喜欢JavaScript,那么离子可能就是您的选择,因为您可以轻松地模拟桌面上的所有内容。
Appcelerator将代码转换为本机项目,与其他JavaScript与本机工具相比,其过程似乎有点过时了。例如。 React Native和Codename One提供了更流畅的开发人员体验。