基于hybrid混编模式下的目标管理系统

2018-12-21 02:19刘肖雄朱滕威
电子技术与软件工程 2018年10期
关键词:跨平台底层框架

文/刘肖雄 朱滕威

1 引言

在移动互联网的快速发展下,各大开发厂商和团队开始争相竞争移动应用市场,各种新奇有趣的应用层出不穷,为了争占市场份额,急速的拓展业务,团队对于开发效率的要求显著提高,而HTML5 plus的可跨平台性、开发成本低、项目周期时间短等优势逐渐被使用起来,形成了Hybrid APP这种被很多公司看好开发模式,并迅速成为主流替代了Native APP。下面就传统的Native APP、Web APP和新兴的Hybrid App这三种开发模式的优势和缺点进行比较。

1.1 Native App

传统的Native APP开发模式作为曾经的主流开发模式有着很多重要的优点,厂商为了推广应用或者吸引用户,一般会适配多个操作系统,在最大程度上覆盖和吸引各渠道用户,其优点有:依托于移动设备底层硬件的访问,可以直接调用官方API,Native APP操作体验较为流畅,原生开发动画效果流畅并且有着良好的交互性能,拥有系统级别的贴心通知或推送提醒,便于访问本地资源(如通讯录、地图等),有着良好的用户体验。而其缺点也非常明显:这种开发模式对于IOS、Android等不同的手机操作系统需要使用不同的程序设计语言和框架进行开发,不同操作系统需要掌握不同的程序设计语言来进行开发,如Android系统需要用Java语言,IOS使用OC或者Swift,这就导致开发人员的学习成本大大提升,该模式一般由客户端和服务器端两部份组成,APP端的UI设计元素、数据内容、逻辑框架安装在移动设备上,每一次系统更新都需要在各大应用商店进行审核,对于新功能更新上线有着不利的影响。

1.2 Web APP

Web APP在移动设备的浏览器上运行,所以通常只需要设置一个开发项目,拥有跨平台性的优势,开发周期短,开发成本较为低廉,由于是在浏览器上运行的,不用下载到本机,软件更新在服务器上进行,可以实现热更新,不需要通过应用商店的审核方便开速上线迭代开发,在Html5的支持下,调用设备原生硬件的能力有所提升单仍不够充足;缺点是对于移动设备的底层配件无充足的访问功能,性能受限于设备,对网速的要求较高。虽然前端技术的发展使其界面和表现能力都在逐渐向原生应用靠拢,但是一些动画效果仍然难以体现,展现出来的界面以及操作体验相对较差,用户体验度不是很高。

1.3 Hybrid APP

Hybrid APP是一种混合编程开发模式,通过使用原生开发技术和Web开发技术,底层需要Native提供的容器(UIWebview),上层通过Html+Css+JS技术展现界面的动画交互效果,底层透明化、上层多样化,给予了前端操作原生资源的访问权限,通过对把Web静态资源部署到native原生框架,实现跨平台的目的。结合了Native App和Web APP的优势:可跨平台性使开发成本和学习成本降低,开发周期短、效率高,利于新业务或者功能模块尝试。在表现力和交互方面与Native APP较为接近,但是仍需进行不断优化,相较之下,尚有差距。Native框架对移动设备的访问能力充足,但静态资源部署在服务器上,内容上需要加载出来,故而表现力仍受限于网速快慢。但总体而言,其缺点在4G网络的发展和Html5 plus技术的进步之下,已经不是问题,Hybrid APP和Native APP的表现上差距逐渐减少。以这几个概念为中心,本文将探究Hybrid APP的开发原理,从技术层面来探究如何进行性能上的优化使其交互体验感接近Native APP。

2 整体框架及方案选取

基于Hybrid APP模式的长期目标管理系统采用Phone Gap框架进行敏捷开发,整体架构包括用户端和服务器后端。前端开发使用Sencha Touch框架,这是一个专为移动应用开发使用的JavaScript框架,这个框架完全兼容Android和IOS的开发,通过最新的Html5和Css3等前端开发技术和标准化的数据管理组件,可以完成高交互能力,表现力丰富的用户界面。

Cordova框架可以用前端技术实现界面和交互开发,可以打包成任意跨平台的安装包,同时可以调用原生接口,发布到各移动应用市场上架。终端使用WebView容器来显示和渲染页面并和JavaScript互相调用,使用Android操作系统的底层接口,讲Web嵌入到应用程序中。对于前端的交互效果主要使用Node.js来实现基础功能;用Express JS Web实现业务功能。Express是一个基于Node.js的web应用程序框架,可以提供强大的类库进行使用。

3 结论

Hybrid APP作为一个适合敏捷开发的同时兼顾Native APP用户体验和布局能力,以及Web APP的灵活可跨平台优势的开发模式,非常适合在节省经费或者人力资源不足时使用。通过实践,使用WebView容器和Cordova框架实现前端和原生之间的交互,完成了Hybrid APP的开发,达到了较为接近原生应用交互能力的程度,证明了是一种可行的Hybrid APP开发方案。

猜你喜欢
跨平台底层框架
航天企业提升采购能力的底层逻辑
广义框架的不相交性
跨平台APEX接口组件的设计与实现
WTO框架下
一种基于OpenStack的云应用开发框架
基于QT的跨平台输电铁塔监控终端软件设计与实现
基于OPC跨平台通信的电机监测与诊断系统
基于B/S的跨平台用户界面可配置算法研究
回到现实底层与悲悯情怀
中国底层电影研究探略