打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
现有主流Hybrid框架都有哪些
userphoto

2016.09.20

关注

现有主流Hybrid框架都有哪些

1、Cordova (phonegap)

2、Ionic (angularjs 1.x 2.x)

3、ReactNative (reactjs)

1、Cordova (phonegap)

整理了现在市场上最具竞争力的3个框架。老牌框架Cordova,前身phonegap,历史比较久远,有很多公司在一开始接触Hybrid用的都是这种方式,这种开发方式可以让一个Web前端开发者不用懂原生就可以构建起自己的一个APP,其实他的核心原理就是,iOS用的javascritCore,Android用的就是webview,js和java互调来实现的,它的性能瓶颈就是在于webview的性能,如果像Android 4.1以下的webview它的性能并不是很好,在Cordova打包出来的APP性能就会有问题。所以说,这是Cordova最大的一个性能瓶颈,但好处就是他可以使用原生的js、html、css来构建一个应用,它可以支持很多的插件来去调原生的API的,这种插件的库和它的生态是非常完善的,也就是说一个前端开发者不需要懂原生就可以做,常规的所有调原生的东西都是具备的,这是它最大的好处,而且相对来说比较稳定,但是它又比较重,这个框架要是做Hybrid开发的话,集成在原生的app里面,这个框架是一个比较重的框架,这些就是它的诟病和性能瓶颈

2、Ionic (angularjs 1.x 2.x)

Ionic也是有一定历史的,是用angularjs构建的,angularjs的特点就是双向数据绑定,它的数据是双向的,双向数据流。它的特点首先就是一套代码可以构建多个平台应用,这点和Cordova一样,Ionic性能要比Cordova要好一点,它不是全部使用原生的html css js来写的,它是angularjs来写的,angularjs性能相当原生来讲肯定是要好的,而且配套设施比较完善,加上双向数据绑定,而且angularjs是一个比较完善的框架,它相当于是MVC、MVVM整个层都有,不只是包括一个view,包括了其他的东西比如:Ajax...这个框架构建出来的APP还有一个特点就是UI非常的漂亮,Ionic的UI比Cordova要好的多的,很控件都封装好了用起来非常方便,缺点是缺少Android和iOS平台有些特殊性的体验,就是平台特性的东西它并不是很明显,第二点就是目前为止处于一个不稳定的状态,大家都知道angularjs出到2了,2是完全不兼容1的,所以Ionic也更新成Ionic2了,Ionic2也是可能想在未来和ReactNative争一争的。Ionic2也放弃了Android 4.1以下的版本,从Android 4.1开始支持,也是因为webview的问题,为什么Ionic会受制于webview?因为Ionic最后打包还是用的Cordova打包的,从本质上讲它会面临跟Cordova一样的性能瓶颈问题,也就是webview的问题,如果用纯原生html css js来写的话会面临一个什么问题呢,Web的DOM过于复杂,当一个界面特别复杂的时候,DOM树也会比较复杂,界面在渲染的时候,这个就成了我们的一个性能瓶颈,如果你DOM写的不够好,view树过于复杂,嵌套过多,就会导致在手机上卡顿现象,这也是他们面临的一个问题,不过Ionic在iOS上表现还是不错的。但是在Android 4.1以上还行,4.1以下就不行了,所以Ionic2干脆就放弃了Android 4.1,这个也是向ReactNative在学习,ReactNative也是放弃了Android 4.1以下平台

3、ReactNative (reactjs)

ReactNative本质是由reactjs构建的,ReactNative构建出来的应用不是用Cordova打包的,这是跟Cordova、Ionic最根本的一个区别。ReactNative是用原生打包的,为什么它用原生打包呢?因为它不是一套代码处处运行,ReactNative的宗旨是:“Learn once,write anywhere”,学习一次,处处编写。不是编写一次处处运行。ReactNative的核心是把js写好之后解析成原生控件,它是有一个桥协议,这个时候它的js跟原生语言交互,iOS上面是jscall安卓上面并不是用的webview来去做的,安卓上面使用的JNI,通过C这层来去完成原生性能通信的性能这一层保证,它就和webview的性能瓶颈没有什么关系了。

ReactNative性能是胜于Cordova、Ionic的,要是排名的话Cordova是最差的其次是Ionic,ReactNative是性能最好的最接近原生的,因为ReactNative构建出的APP是原生的APP,组件也是原生的,它并不是用webview渲染的,Ionic比Cordova好是因为,Cordova里面会有页面之间跳转,我们都知道应用里面会有各种各样的跳转,Cordova是通过跳转到不同的链接而去路由导向跳转的,angularjs在做移动应用的时候它是单页APP,路由都内部路由而不是通过A标签跳转的,这样做性能就会比Cordova好很多,Ionic构建的应用不光界面上好看,性能上也是比较好的。ReactNative要比Ionic更强,ReactNative界面保留了很多Android iOS差异的,需要在代码上做兼容,Cordova、Ionic就不需要考虑这些,一套代码就可以直接多平台适配了。

感谢关注,评论,转发!

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
HybridAPP开发框架Ionic+AngularJS+Cordova搭建
ionic ,react
三款不同的Hybrid开发框架, Native.js , AppCan , Intel XDK
Mui与Cordova 、ionic、Weex、React Native对比
ionic入门之AngularJS扩展
Appcan、apicloud、HBuilder 不同之处解析
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服