我对HTML5,Javascript,jQuery,AngularJS有很好的经验.我即将开发混合移动应用程序.
我只是想知道哪一个是最好的.
我正计划使用IONIC,因为它也开始支持Windows.这将有多大帮助.有没有比IONIC更好的东西?
我可以稍微改变你的问题吗?正确的应该是哪个移动应用程序框架最少.
别误会我的意思,我不是一个仇敌.在这一点上,我是这里贡献最多的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.
问题对于这种格式来说过于宽泛,超出了本网站的范围并显示缺乏研究:
Sencha正在使用Cordova.
Jquery mobile正在使用Cordova.
Ionic正在使用Cordova
Cordova没有GUI框架,它只是一个浏览器容器.
事实上它确实如此
(a)Cordova vs. Titanium
Cordova提供了一个浏览器窗口和一些扩展JavaScript的本机插件,以便可以使用某些本机功能.但GUI在浏览器中是JavaScript,因此您可以在浏览器中执行任何操作.
Titanium将您的JS逻辑转换为本机代码并使用本机控件,这使得它更快,但您无法重用第三方JavaScript控件.
(b)如果是Cordova,那么ExtJS vs. IONIC vs. JQuery Mobile
到目前为止我只使用过ExtJS,所以我无法评论其他框架.看看一些示例代码(实现按钮,字段,列表或网格以及您的应用程序所需的任何其他内容),尝试理解它,您将找到适合您的内容.