数据中台数据中台
申请试用
新闻动态
了解袋鼠云最新动态
新闻动态>「数据中台」程序员常用应用程序开发模式>
「数据中台」程序员常用应用程序开发模式
2021324|文章来源:-

「数据中台」程序员常用应用程序开发模式常规应用程序开发模式,有iOS和aOS两大系统,需要各自用语言开发应用程序。虽然性能和经验都很好,但开发成本和发布成本都很高。

手机端的网站,通常被称为H5应用上是运行在特定移动浏览器上的网站应用。一般指SPA(SinglePageApplication)模式开发的网站,与MPA(Multi-pageApplication)对应。开发成本和发布成本都很低,但性能和体验并不差,但也受浏览器处理能力的限制,多次下载也会占用流量。同样的例子是:网易管家APP(Tab3)。
混合模式的移动应用,介于WebApp和NativeApp之间的App开发技术,兼具NativeApp良好的互动体验优势和WebApp跨平台开发优势。其实主要原理是Native通过JSBridge提供统一的API,然后用Html+Css实现界面,JS写逻辑,调用API,最终页面显示在Webview中。在这种模式下,Android和iOS的API一般是一致的,所以HybridApp有跨平台的效果。开发和发布都很方便,效率也介于NativeApp模式和WebApp模式之间,但需要学习的范围很广,需要本地配合。最好的例子:我爱我的App,东方航空App。
Facebook发现HybridApp存在诸多缺陷和不足,于是推出了一套新的开源App开发方案ReactNative。用JSX语言写本地界面,js通过JSBridge调用本地API渲染UI交互通信。高效体验非常接近NativeApp,发布和开发成本低于NativeApp,但学习成本高,学习文档少,容易踩坑。最佳例子:Facebook,Youtube,Discord,QQ,百度等。
在ReactNative的成功案例中,阿里巴巴开发团队重新设计了一套开发模式,相当于站在巨人的肩膀上,用淘宝团队项目做营养,引起了广泛关注,2016年4月正式开放源码,并在v2.0版官方支持Vue.js,与ReactNative分庭抗礼。
单页面开发模式效率很高,热更新发包体积小,跨平台性更强。但因为刚开始,文档并不全面,社区活跃度也不如ReactNative高,功能还不完善,暂时不适合Weex开发App。最好的例子当然是马爸爸旗下的淘宝,天猫,阿里云,优酷,闲鱼,饿了么等等。
Native应用程序
NativeApp是一个基于iOS,Android,WP等智能手机本地操作系统的第三方应用本地程序来编写运行的第三方应用程序,也叫本地应用程序。开发语言通常是Java,C++,Objective-C。
程序员需要知道的5种应用程序常用开发模式是什么?你知道多少?
自从iOS和Android两个手机操作系统发布以来,互联网行业就增加了一个新名词:App意味着运行在智能移动终端设备的第三方应用中。
由于NativeApp位于平台层上方,因此具有较好的向下访问和兼容性,可支持在线或离线、消息推送或本地资源访问、摄像拨号等功能。但由于设备碎片化,App的开发成本要高得多,维持多个版本的更新升级更麻烦,用户的安装门槛也更高。但更乐观的是,AppStore培养了更好的用户付费模式,因此,在Apple的生态圈中,开发者的盈利模式是一个明朗的状态,而其它market也在向这条路靠拢。
优点1。与其他模式相比,提供最好的用户体验,最好的用户界面,最华丽的互动。2.为不同的平台提供不同的体验。3.可以节省带宽成本,更快打开。4.功能最强大,尤其是在与系统的互动中,几乎所有的功能都可以实现。
网络App
说到WebApp,很多人会想到WAP,或者有人认为WAP就是WebApp,其实不是。
程序员需要知道的5种应用程序常用开发模式是什么?你知道多少?
网络应用程序和网络应用程序最直接的区别在于功能层面。网络应用程序更注重利用网页技术在移动端进行显示,包括文本、媒体文件等。而且网络应用程序更注重功能,是利用网页技术实现的应用程序。一般而言,网络应用程序是运行在网络和标准浏览器上,根据网页技术开发实现特定功能的应用程序。
大多数响应技术都是为了实现WebApp适应多种客户端而设计的。
网站一般分为两类:MPA(Multi-pageApplication)和SPA(Single-pageApplication)。而且网络应用程序通常指SPA形式开发的网站。这更像是一个应用程序。
优点1、可跨平台,调试方便2、不需安装,不占用手机内存,更新速度最快3、无多版问题,维修费用低4、临时入口,可随意嵌入。
Hybird应用。
程序员需要知道的5种应用程序常用开发模式是什么?你知道多少?
混合开发,也就是半本地半Web的开发模式,本地提供统一的API供JS调用,实际的主要逻辑是Html和JS完成,最终显示在webview,因此只需写一套代码即可达到跨平台的效果,另外还可以直接在浏览器中进行调试,非常方便。首先,只需要一位前端人员稍微学习一下JSapi的调用。
PhoneGap是HybirdApp的早期实践者,随后到处开花,如Titanium,Salama,WeX5,Kerkee和国内的AppCan,项目各有各的实现方式,基本上原理相同。幸运的是,AppCan上海总部参与了一段时间的学习研究,下面是一些大致的介绍:
AppCan是基于HTML5技术的Hybird跨平台移动应用程序开发工具。开发人员利用Html5+Css3+JavaScript技术,通过AppCanIDE集成开发系统,云包装等,在Android,iOS,WP平台上快速开发移动应用程序。
AppCan的平台组成。
程序员需要知道的5种应用程序常用开发模式是什么?你知道多少?
在实际的APP开发中,AppCan可以完成大部分工作,如图所示:
程序员需要知道的5种应用程序常用开发模式是什么?你知道多少?
AppCan将App底层复杂的本地功能封装在引擎和插件中,开发人员只需调用接口、包装和编译即可获得本地功能;灵活的插件扩展机制。
开发者可以像开发WebApp一样开发app的视觉用户界面和大部分交互。当他们需要使用本地功能(如摄像头、陀螺仪等)时,他们只需要调用官方应用程序界面就可以轻松达到Native的效果。至于JS和Native的通信,常用的有URL监控和大部分Hybrid厂商使用的JSBridge通信,原理相似。
程序员需要知道的5种应用程序常用开发模式是什么?你知道多少?
「数据中台」程序员常用应用程序开发模式随着Hybird概念的普及,国内外各大企业也参与了探索,国外代表有Facebook,google,亚马逊,国内有腾讯,阿里巴巴,网易等等,慢慢地,他们发现Hybird严重限制了WebView的解析渲染效率,于是Facebook开始了他的类原生研究探索。

此刻起,和袋鼠云一起让数据产生更大价值
此刻起,和袋鼠云一起让数据产生更大价值