移动端架构分析
1移动端常见开发模式
目前主流应用程序大体分为三类:Native App 、Hybrid App、Web App。
1.1纯Native App
Native APP 指的是使用原生程式编写运行的第三方应用程序,一般依托于操作系统如iOS、Android、WP,有很强的交互,是一个完整的App,可拓展性强。需要用户下载安装使用。也叫本地app。
Native App因为位于平台层上方,向下访问和兼容的能力会比较好一些,可以支持在线或离线,消息推送或本地资源访问,摄像拨号功能的调取。但是由于设备碎片化,App的开发成本要高很多,维持多个版本的更新升级比较麻烦,用户的安装门槛也比较高。但是比较乐观的是,AppStore培养了一种比较好的用户付费模式,所以在Apple的生态圈里,开发者的盈利模式是一种明朗状态,其他market也在往这条路上靠拢。
1.1.1主流框架
iOS:
(1)、Cocoa 环境+Foundation 和UIKit 框架
(2)、使用Objective-C 和Swift 做为主要开发语言(兼容C/C++)
Android:
(1)、Java虚拟机环境
(2)、使用Java 作为主要开发语言(支持C/C++)
WindowsPhone:
(1)、Windows RunTime 框架(WP10)
(2)、使用原生C++、C# 和Silverlight 做为主要开发语言
1.1.2优势
(1)、打造完美的用户体验
(2)、性能稳定
(3)、操作速度快,上手流畅
(4)、访问本地资源(通讯录,相册)
(5)、设计出的动效,转场
(6)、拥有系统级别的贴心通知或提醒
(7)、用户留存率高
1.1.3劣势
(1)、开发成本高,可移植性差,需要维护iOS、Android、WP等多个平台(不同平台有不同的开发语言和界面适配)
(2)、维护成本高(例如一款App已更新至V5版本,但仍有用户在使用V2, V3, V4版本,需要更多的开发人员维护之前的版本)
(3)、更新缓慢,根据不同平台,提交–审核–上线 等等不同的流程,需要经过的流程较复杂
1.1.4主流应用
够快云库、电话本、美图秀秀等中量级应用。
1.2Hybrid App
Hybrid APP指的是半原生半Web的混合类App。需要下载安装,部分页面看上去类似Native App,但只有很少的UI Web View,访问的内容是 Web 。
Hybrid App主要以JS+Native两者相互调用为主,从开发层面实现“一次开发,多处运行”的机制,成为真正适合跨平台的开发。
Hybrid App同时使用网页语言与程序语言开发,通过应用商店区分移动操作系统分发,用户需要安装使用的移动应用。总体特性更接近Native App但是和Web App区别较大。只是因为同时使用了网页语言编码,所以开发成本和难度比Native App要小很多。因此说,Hybrid App兼具了Native App的所有优势,也兼具了Web App使用HTML5跨平台开发低成本的优势。
Hybrid App按网页语言与程序语言的混合,通常分为三种类型:多View混合型,单View混合型,Web主体型。
1.2.1多View混合型
即Native View 和Web View 独立展示,Native View 与WebView 交替的场景出现。这种应
用混合逻辑相对简单。即在需要的时候,将WebView 当成一个独立的View(Activity) 运行起来,在WebView 内完成相关的展示操作。这种移动应用主体通常是Native App,Web 技术只是起到补充作用。开发难度和Native App 基本相当。
1.2.1.1主流框架
Native部分使用操作系统原生框架+JSBridge。
Web融合部分国内阿里系使用最广的框架WindVane+HybridAPI等(后续章节详细介绍)。
jquery框架定义1.2.1.2优势
(1)、高效、扩展性强、支持多团队并行开发
(2)、衔接Android/iOS原生导航交互,完美的用户体验
(3)、业务实现更灵活,复杂业务可通过Native 实现,频繁变化或简单业务通过Web实现,更好的满足移动端业务多样性、快速迭代要求

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。