众所周知,Gartner是全球最权威的IT研究与顾问咨询公司,其研究范围覆盖全部IT行业,而Gartner每年会根据分析预测,来推论各种技术产业的成熟演变速度,以及要达到该成熟阶段所需的时间,并根据不同发展阶段绘制成一条曲线,这一曲线便是著名的“新兴技术成熟度曲线”。
纵观app混合开发技术的发展历史,从2010年兴起至今,基于Gartner的“新兴技术成熟度曲线”原理,已能够绘制出一幅完整的成熟曲线图,通过曲线的整体走势及目前所处位置,我们能够直观的看到app混合开发技术的现状和潜质,从而为相关研发、投入、技术选型、资本运作提供决策参考。
从上图中我们不难看出,app混合开发技术步入2018年,已处于成熟度曲线的攀升阶段,而Gartner对成熟曲线中的四个阶段有明确定义,透过这四个阶段,可以透彻地解读混合开发技术发展历史。
启动阶段:
混合开发技术出现于2010年,这个时候混合开发技术的概念已经被提出,比如PhoneGap便开始推出相关开发技术。
上升阶段:
2014年底,被业界广泛知晓的HTML5标准定稿,同年9月,APICloud混合开发技术平台上线,而2015年年初,Facebook也提出了React Native的应用开发框架,此时,业界对混合开发技术都充满了信心,随之国内也呈现出一片欣欣向荣的景象。
低谷阶段:</span></p></section></section><section class="wxqq-borderLeftColor" style="width: 0px;border-top: 14px solid transparent;border-bottom: 14px solid transparent;border-left: 14px solid rgb(142, 201, 101);display: inline-block;vertical-align: top;" powered-by="xmyeditor.com"></section><section style="width:0px;border-left:14px transparent solid;border-top:14px rgb(160,160,160) solid;" powered-by="xmyeditor.com"></section></section><section style="padding-bottom: 10px;padding-left: 10px;text-align: justify;letter-spacing: 2px;line-height: 25px;color: rgb(68, 68, 68);" powered-by="xmyeditor.com"><p style="font-size: 14px;"><span style="letter-spacing: 1px;text-indent: 29.3333px;font-size: 16px;">2015年年底到2016年,混合开发技术则陷入了低谷期。</span></p><p style="font-size: 14px;"><span style="letter-spacing: 1px;text-indent: 29.3333px;font-size: 16px;">
</span></p><p style="font-size: 14px;"><span style="letter-spacing: 1px;text-indent: 29.3333px;font-size: 16px;">由于混合开发技术刚出现的时行业对其报有期望过高,但当时技术还并不成熟,甚至React Native都没有开发插件,使用过程中也是问题不断,导致业内对混合技术的态度直接从高点跌至冰点。从而我们也发现,想在中国使用一款产品,需要与大量的垂直服务相结合,扩展大量模块,才能实现一款商用的应用。故而,在2016年业界发现其实行业内对混合开发的技术特点和领域认知并不够彻底。
攀升阶段:
得益于2016年后的持续发展,混合开发技术真正地进入了攀升期。
毋庸置疑,攀升期对于一项技术或一个产业来讲是十分重要的。为了便于行业对攀升期进行定义,Gartner提出了成熟度曲线中攀升期的六个标准,从这六方面,我们便可对混合开发技术的攀升期进行验证。
历经8年的发展,混合开发技术特点已非常明显,不存在学术和实践上的分歧;业内对混合开发也重新产生期待,很多大型企业也都在尝试使用混合技术。现阶段开发一款应用,基本会用到的所有API在混合平台都可进行扩展,其性能体验同样能够达到与原生相似的能力。目前就HTML5而言,需要在六个方面通过混合技术进行补充。很多开发者认为混合开发速度比较慢,然而一个不争的共识是做一款API,我们控制HTML和CSS不要有大框架,这样整个开发速度并不慢。
做一款移动应用的时候,需要很多交互功能,比如页面滚动、下拉刷新等等,这会造成整个页面重新绘制,这种重新绘制成本则比原生开发低很多,诸如在APICloud进行混合渲染,可以将频繁刷新的需求,通过大量API模块来完成。
这一点混合开发并不如原生开发,但混合开发也是有解决方案的,一个应用50个界面,每一个界面都是独立的,它的转场和界面切换便可使用原生自身效果。
4、动画和手势
动画和手势与Layout和Render比较相似,从中涉及到重新绘制的过程,对于这方面需求,有大量的UI模块来实现手势和绘制功能,同样都可以通过原生扩展。
5、网络请求和数据缓存
所有的HTML布局的代码都是放在本地,不存在网络的问题,对于浏览器一些数据缓存和图片缓存缺陷不同混合平台都有自己的解决方案。
Javascript的执行和桥接在原生过程当中也是要放到本地进行,如果甬道HOS遇到加密、解密或者一些解析,混合开发技术可以扩展来执行,而成本并不高
应用领域:
如今在电商、咨询、教育、O2O、直播、政务等领域使用混合开发技术没有问题。而混合开发不擅长的领域是游戏、美图和相机,这几个行业确实比较依赖原生技术。所以如果开发一款应用中有50界面,其中40界面需要通过原生拓展,那么用混合技术并没有太大的意义;而如果50界面中,40界面需要用HTML5做,10个界面需要拓展,便可以用混合技术。
功能覆盖:以APICloud平台为例,目前平台上可使用的功能模块超过600个,满足界面布局、设备访问、功能扩展、开放SDK、AI、直播、物联网等各个领域。
性能体验:
以APICloud平台开发的电商app为例,以启动速度、导航切换、打开新页面、调用模块、调用开发服务五个维度,通过近百个机型的测试平均结果,对比两款行业中最主流的电商app,分别在Android和IOS环境下,他们的成绩可看出从用户体验来讲,相差毫秒的距离,并不会给用户带来直观的使用体验区别。
工具、平台和生态:
混合开发技术发展至今已经有非常多工具、平台和生态出现,在这其中又分解出两个主要方向,一类是Web+Native混合开发,一类是中间语言编译,两类最大的区别在于左侧只支持W3C标准的CSS、JS,右侧是自己发明了一种语言去翻译。
以微信小程序为例,微信小程序也扩展了一些对象和标签,但编译转化成标准的HTML5,所以也属于左侧Web+Native混合,具备高效、灵活的特性,同样APICloud也是基于Web+Native的技术。
一门技术想要商用,必须要经过平台化、组件化和生态化的阶段。而混合技术发展至今已经过这三个阶段,是可以商用的成熟技术,所以无论对APICloud还是行业中的其他厂商来说,混合技术都是可期待可发展的。
大规模应用案例:
其实在手机桌面的很多应用都是混合技术开发的,比如下图中的一些独角兽级别app,均使用到混合框架,并基于应用自身进行扩展。
而诸如海尔热水器、春秋航空、Intel硬享公社、移动CRM、哇校英语直播等,则是基于APICloud平台打造的纯混合开发技术app。
通过将app混合开发技术的发展历程,对应到Gartner“新兴技术成熟度曲线”,并以技术特点、应用领域、功能覆盖、性能体验、工具平台和生态、大规模应用案例的六大标准进行验证,我们可以清晰地看到混合开发技术已步入攀升阶段,甚至迎来实质生产的高峰期;这对于坚持使用混合开发技术的平台和开发者而言,将起到更加持久的推动作用。
网友评论