原生开发才是王道

2023-05-26 0 422

阅读责任编辑约莫须要 5 两分钟。

前段时间很多听众问我这么两个难题,说刚做 Android 合作开发不久,但市售被 H5,React Native 等那些终端趋势压制的不得不考虑要不要起身自学 H5 或是 RN ,担心太慢时代,少女,你话虽如此了,今天我就写首诗给大家详尽答疑下,并且说下我的观点。

Native App

Native App 也即原生植物应用领域,假如你是做 Android 合作开发,那么大部分都是用 Java 词汇来撰写的,假如你是做 iOS 合作开发,则是使用 Objecttive C 或是 Swift 来展开撰写的,那些都是非官方的国际标准,益处不言而喻,利用非官方提供的 api ,合作开发的 app 有更快的性能,能同时实现各式各样酷炫的效果,有更快的相容性,对使用者而言新体验更快。

但是不是再者呢?有,比如你要合作开发两个 app ,很大是要 Android 端合作开发两个,iOS 端合作开发两个,从合作投资成本而言有点大,工作效率也较高,因此他们知道一旦流程出现 bug ,他们通常就只有重新发布两个版来展开预览,对 Android 端说实话,对须要艰难审查的 iOS 而言实在是恶梦。因此为了解决这个难题,不断涌现了各式各样热复原架构,但毕竟都不是非官方的,因此难免有自学准入门槛,最重要的是无可避免的是此类为复原 bug 而生的热复原架构本身也有 bug ,有很大风险。

H5 App

H5 全名是 HTML5 ,是 HTML 最新的国际标准,他们一开始经常看到的QQ贴文电视广告,一些推展镜像等大多是 H5 同时实现的,因此 H5 前段时间比较火,但是所谓 H5 同时实现通常都包涵有 javascript ,这都是 web 后端技师的基本知识,这也致使 web 后端技师职务近期较火。

但是假如合作开发两个 H5 应用领域的话,那很单纯,你只须要在外边包覆两个壳就好了。拿 Android 而言,最单纯的间接包个 WebView 处理下就能称得上两个单纯的 H5 应用领域了,其他的交予 web 后端技师就好了。

H5 应用领域的益处也是不言而喻,虚拟化,因为只须要在 Android 和 iOS 间接写个壳就好了,大幅增大了合作投资成本,因此 web 是实时渲染的,即使有 bug ,能间接发布就好了,也解决了热复原的难题。

但缺点很大:首先就是操控性新体验太差,跟原生植物 App 的新体验实在不能比,iOS 相对好些,Android 上的新体验实在令人发指,因此 Android 本身版的碎片化严重,再加上国内各大手机厂商所谓的「定制」,新体验根本不能看,因此会遇到各式各样相容性难题,远的不说,我在合作开发 Android 的过程中,就遇到不少适配的坑,有些你甚至都没法解决,只能眼看着。

React Native

原生植物 App 新体验最好,但不能虚拟化,H5 应用领域能虚拟化,但新体验太差。是不是一种介于两者之间的解决方案呢? React Native 横空出世。

React Native 是 Facebook 技师开源的两个架构,项目开源地址在这里:

https://github.com/facebook/react-native

它的设计基于 React.js ,通过撰写 javascript 代码,中间做了一层解释器,把相关的 js 解释成原生植物组件,最终达到跟原生植物 App 差不多的新体验。注意,React Native 最终运行的不是 web ,这点他们团队的小伙伴一开始也搞错了,它最终运行在机器上的是原生植物的组件。

这解决方案是不是很完美?利用 js 的虚拟化特性,能达到原生植物的操控性与新体验,听起来就帅爆了,加上又是 FB 巨头提出来的方案,因此该项目一经开源,在终端圈就引起了热烈反响。

但如今一两年的时间过去了,看看市售有多少 App 是完全使用 React Native 来展开合作开发的,我想原因有下:

1. 虽说操控性与新体验比纯 web 好多了,但不管是 js 的执行还是多一层 js 到原生植物组件的解析渲染,操控性上肯定是不如原生植物。

2. React Native 是一种解决方案,但该方案还不成熟,据我所知还有不少坑,去该 GitHub 项目主页看下有多少 issue 就知道了,因此国内环境更复杂,你们懂得。

3. React Native 有不少限制,虽说它是一层 js 到原生植物组件的映射,但并不是所有的组件的 api 都支持的,假如你亲身实践,你会发现,很多产品经理的需求很难同时实现,这次真不是产品经理的需求太复杂,而是 RN 的限制确实不少。

践下。

顺便多说句,阿里不是前段时间也开源了两个架构叫 Weex 么,能说重新发明了类似 RN 的轮子,只但是它是基于 vue.js ,前几天宣布 vue.js 的作者以技术顾问的形式加入该项目组,但是我依然不看好该项目,一方面该项目会遇到 RN 上面的一些难题,另一方面阿里的项目大多是为自己的业务服务的,因此 Weex 应该有不少是跟自己的业务绑定紧密的,不很大适合大部分中小公司,我没有亲自自学与实践过,以上只是我个人的一些观点。

总结

因此综上,我觉得他们时刻保持对技术的敏感性挺好的,但不要过于杞人忧天,因此国内很多媒体言过其实,稍有点风吹草动,就会被吹的上天了,因此他们要有自己的判断与实践。

我一直认为原生植物合作开发才是正道,无论到什么时候,除非你不做 App 合作开发,或是说以后 App 死了,QQ崛起了,但是起码目前还看不到苗头,也别相信什么 App 已死的鬼话。那么什么时候 App 开始没落呢?我也不知道,给大家两个我自己认为的指标做参考吧,什么时候 QQ、QQ、支付宝等推出新的使用方式的时候,可能代表 App 没落了,仔细想想,他们从 PC 时代过渡到手机 App 时代,是不是基本上从

对了,前段时间QQ贴文推出了原生植物电视广告,QQ第一次把电视广告新体验提升到了两个新高度,我想某种意义上是不是说明了什么?

因此,建议大家不用再过度担忧了,能时刻保持着对新技术的敏感性,但不用过度解读,只要你目前还在做终端应用领域合作开发,你的原生植物合作开发能力还有很多潜力提升,现阶段你依然须要提升你原生植物合作开发的能力,把重心放在原生植物合作开发上!

PS:以上纯属个人观点,不见得对,不喜勿喷,欢迎交流。忙中偷闲,原创不易,假如觉得不错,赞赏、点击电视广告都是对我的支持!

责任编辑由“135编辑器”提供技术支持

从本搜索「掘金」,技术干货尽在掌握中。

原生开发才是王道

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务