浅谈:RN技术的优劣势
作为安卓开发站长的你应该对RN不陌生,它出现已经有一段时间了,并且已经开发出了很多非常流畅的纯RN产品,以及相关的工具,如:处理安全问题、更新问题。但是,有一点不得不承认,RN并非所有的JS工程师都能搞定。若您的安卓开发团队中没有懂android整个架构的工程师,那么难免在开发的过程中会出现各种各样的问题,优化android是一件很繁琐的事,毕竟android优化存在很多黑科技,这点天津app开发相信很多的安卓开发站长都体会过。
那么,RN技术存在哪些优劣势?
一、RN的优势
A、调试方便:安装ipa即可,无需频繁编译,只需要reload一下,把js代码从云服务器下载下来就能呈现改变代码后的效果。而且RN还支持hotReload,这样的话调试界面就会变得很方便,代码改好以后保存,界面也会自动的跟着变化,虽然这点在调试时会很爽,但速度上面有些慢,需要reload。
D、热更新:这正是大多数公司选择使用RN的主要原因,app频繁升级容易引起用户反感,并且苹果审核机制很麻烦。因此,现如今很多的大型app都用RN,毕竟繁多的业务迭代,每次都通过APP审核,这需要浪费很多的时间。
B、css-layout布局:这在某种程度可以大大的降低前端程序员的学习成本,大大减少代码量。但是有一点,对于ios或者安卓开发者而言,较开始刚接触的时候,在思想上面需要接手一些转变。
C、跨平台:所谓的跨平台,也就是大部分代码只需要写一套,即可在安卓和ios上运行,无需开发多个版本,而这能够在一定程度上减少开发成本的,减少开发人员数量。
E、后台硬:RN的后台就是Facebook,试想一下有着Facebook这个强大的支撑,发展能不好吗?
二、RN的不完善
在这里,天津app开发真的忍不住想要吐槽一下,RN技术存在的不完善的地方真的不少,和大多数原生开发体验相比,堪称天壤之别。RN现在的较新版本是0.46,我们工程中用的是0.42,毕竟还没上1.0呢。抛开主观情感,下面是其存在的劣势:
A、文档很粗略:虽然官网上有文档,但只是简单的介绍及各个空间属性,对细节描述很少,当遇到难题或踩到坑,无法在上面找到解决方案。
B、开发体验很一般:虽说js语法很灵活,但毕竟是还是脚本语言,调试起来不方便,不好差错。
C、平台不统一:很多控件都是iOS专属,或安卓专属,还有同一些其他的控件,在不同平台上表现差异很大。
D、控件不完善:其实,这个挺多的,较基本的ListView,功能缺失,坑很多。Text不支持富文本,动画,手势,ScrollView等。
E、升级RN版本需要大动干戈:RN版本升级,真的挺麻烦。新版把PropTyps从React中移了出来,那么之前的引用方式就得变,所有的文件挨个查,非常麻烦浪费时间。
F、bug多:虽说做出优质app需要花费大量人力和时间去打磨跨平台,可能会加大开发成本,但是换了RN之后,需要投入的人力、物力、精力更多,做起来也更累,迭代慢,bug多。
总之,虽然RN上线很久了,但是目前仍存在很多不稳定因素,所以,天津app开发建议各位想入坑的开发人员和决策者在入坑前得多权衡,虽然作为技术开发者应该具备对新技术的敏锐嗅觉和快速学习能力,但是对于项目的技术更新,还得要根据实际情况,要慎重。
相关阅读推荐
安卓app开发到底应该如何做?
随着智能手机的使用和大量普及,安卓作为智能手机的移动操作系统,在市场中占有很大的...
安卓app提交应用市场需注意什么
在今天,移动互联网的时代,最重要的入口就是应用商店,所以当企业app定制开发搭建...
如何提升Android开发中的安全问题?
在整个安卓的开发过程中,安全性真的是一个非常重要的问题,其实不管是安卓,任何一款...
安卓app开发最好避开哪些问题?
安卓系统由于其独有的优势,深的广大用户和企业的青睐,随着移动互联网的发展,现如今...
最新资讯
入门文章推荐阅读
安卓app开发最好避开哪些问题?
安卓系统由于其独有的优势,深的广大用户和企业的青睐...
如何提升Android开发中的安全问题?
在整个安卓的开发过程中,安全性真的是一个非常重要的...
安卓app提交应用市场需注意什么
在今天,移动互联网的时代,最重要的入口就是应用商店...
安卓app开发到底应该如何做?
随着智能手机的使用和大量普及,安卓作为智能手机的移...
谷歌安卓9.0新系统的显著优势
众所周知,谷歌的Android系统可以说是目前全球...
浅谈:RN技术的优劣势
作为安卓开发站长的你应该对RN不陌生,它出现已经有...
安卓初学者须知的开发资源
在移动互联网发展迅速的今天,安卓开发受企业的关注度...
基于Android OS 4.0是什么意思
Android OS其实是谷歌领衔的手机联盟开发的...
IOS和安卓哪个更有前景
IOS和Android的开发难度对比:Androi...
Android是什么?
Android通常被翻译为安卓,本义是机器人的意...