一、概念
App混合开发,顾名思义,是一个开发模式,指的是开发一个App一部分功能用native构建一部分功能用html5构建,英文名叫:Hybrid App。
在几年前就已经出现了App混合开发模式,但是真正开始流行始于2014年末,到了2016年已经很流行了,2017年将是鼎盛的一年,因为现在连银行app都开始用混合开发了,比如招行、建行等。
二、优缺点
混合开发最大的优点是:节约成本和时间,缩短App开发周期。
最大的缺点我个人认为有两个:一是性能不是很好,二是兼容性比较差。
但随着Android 5.0+的普及以及iOS 9.0+的普及,性能缺陷和兼容性问题都在下降,也就是说如果哪一天Android最低支持版本从5.0开始,iOS最低支持版本从9.0开始了,那么混合开发App的缺点就明显会下降了,而这一天将在2017年末至2018年初到来。
三、工具和框架
混合开发一些开发工具和框架其实很早就有了,比如AppCan、PhoneGap(Cordova)等,他们都主张一站式开发,简单的说,一个纯html5的开发人员就可以开发和发布Android和iOS的App了,不需要专门的Android和iOS开发人员。虽然感觉这样开发起来很快很简单,但是遇到问题和特殊需求的时候,就开始头疼了,再加上框架本身也存在一定的性能消耗,在Android 5.0和iOS 9.0以下,开发出来的App就显得很鸡肋。所以依我的经验来看,并不推荐找几个纯html5的开发人员就开始“干大事”。
四、怎么去做好混合开发
上面说了,找几个纯html5的开发人员就开始做混合开发,这个是不实际的。主要是因为:1、不是所有的App就用html5来做就可以满足需求,有些特殊场景和特殊的页面以及高性能页面需要用到原生的支持,2、一些复杂算法/重要信息用html5来实现和管理。
综上,我认为以后大部分混合App以后都会朝着以下方向去努力:
1、努力做到原生部分占20%,html5部分占80%。
2、原生将实现:App主界面框架(可能含启动页面)、要求高性能的页面(如聊天/视频通话页面)、复杂算法/重要信息的存储或通信。
而目前这两年来说(2017~2018年),大部分App只能做到35%左右的原生以及65%左右的html5。
一个混合App项目的前端开发人员的分布大概会是1:1:2.5,即:
小型项目:1个Android,1个iOS,2~3个html5
中大型项目:2个Android,2个iOS,4~6个html5
五、混合开发产生影响
1、以后几年Android和iOS开发人员需求量将逐渐减小,而html5开发人员需求量将越来越大,而从Android或iOS转html5的开发人员将慢慢越来越吃香。
2、html发展进程将加快,将越来越多的html框架和工具出现。
后续将写一些混合开发的经验随笔
原创随笔,转载注明出处。