一 uni-app

优点一:

uni-app是一套可以适用多端的开源框架,一套代码可以同时生成ios,Android,H5,微信小程序,支付宝小程序,百度小程序等。

优点二:

uni-app对前端开发人员比较友好,学习成本比较低,首先uni-app是基于vue.js的。其次封装的组件和微信小程序的组件一毛一样,所以对于现在的主流前端人员来说学习几乎0成本,如果你作为一个前端,没有接触过vue和微信小程序的话那建议你多去加加油了。

优点三:

uni-app使用HBX进行开发,HBX对于vue语法等支持可以说是比较完备了。使用HBX进行开发可以说是速度杠杠的。开发速度比较快,ps:虽然我是一个vscode党,但是也还是不得不说HBX做的也很不错了。个人挺喜欢的。

优点四:

uni-app拓展能力强,封装了H5+,支持nvue,也支持原生Android,ios开发。可以将原有的移动应用和H5应用改成uni-app应用。

优点五:

uni-app是DCloud出品的,属于国产,对于国产我们当然要支持一下啦!

缺点一:

uni-app问世的时间还比较短,有很多地方还不是完善,坑很多,如果不喜欢爬坑的朋友那就少用uni-app吧。

缺点二:

对于使用中的一些bug及问题,官方回应的不是很及时。不过可以加一下qq群或者去社区和其他uni-app开发者一起讨论呀。

 

二 react native 

优点:

1. 跨平台-最大的优点,代码复用率95%以上;

2.热更新-避免每次迭代提交APP商店审核,和漫长等待;

3. UI调试方便-不用像原生开发那样每次编译;

4. css-layout布局-方便;

5. 有个好爹,Facebook,会越来越完善;

6. 节约公司成本,是‘小而快’团队的最佳选择。

 

缺点:

1. 整体开发体验不如iOS原生开发;

2. 功能相比原生还不够完善,部分控件缺失,第三方控件不如原生丰富;

3. 两个平台还没完全统一,部分控件平台专属,表现有平台差异;

4. 文档相对粗略,有滞后性,一些细节性问题在官方文档上找不到答案;

5. 升级RN版本或需要大动干戈,向下兼容不好;

6. 增加IPA和APK包大小。

 

选用新技术我们是这样思考的:

1. 怎么实现的跨平台?

简而言之,用JS封装两个平台的控件,开发者只需要编写JS代码,基本不用考虑平台特性。是用JS把两个风马牛不相及的平台统一了起来了。

 

2. 性能如何?

既然是封装了原生控件,那性能应该不会差,无非就是多了一个JS解释器和几个线程,对于手机设备来说几乎可以忽略不计。(但低端安卓手机上动画表现不佳) (项目性质。对我们的项目无影响)

 

3. 是否可持续?

a. 他爸是Facebook

b. 社区很活跃

c. 有很多企业在用

 

4. 适合我们吗?

a. 跨平台需求的紧迫性

b. 技术成本和人力成本

c. 热更新需求

d. 项目复杂度


三  原生android
1、原生的响应速度快
2、对于有无网络操作时,譬如离线操作基本选用原生开发
3、需要调用系统硬件的功能(摄像头、方向传感器、重力传感器、拨号、GPS、语音、短信、蓝牙等功能)
4、在无网络或者若网的情况下体验好。


 

 

posted on 2021-01-12 14:09  湖东  阅读(231)  评论(0编辑  收藏  举报