高速区分定义:

Native App

以基于智能手机本地操作系统如IOS、Android、WP并使用原生程式(SDK)编写执行的须要用户安装使用的第三方应用程序;

Web APP

以HTML+JS+CSS等WEB技术编程,代码执行在移动端浏览器中,通过该移动端浏览器来调用Device API(取决于HTML5未来的支持能力)的不须要用户安装的应用程序;

Hybrid App

同一时候使用网页语言(Web技术)与程序语言(Java、Objective-C等)开发,通过应用商店区分移动操作系统分发,须要用户安装使用的移动应用。

【转载使用,请注明出处:http://blog.csdn.net/mahoking/article/details/30235243

介绍了解:

Web App、Hybrid App、Native App对照



Native App

Native App 该部分介绍參看【高速差别定义】

Web App

Web App 是基于HTML5标准开发的,Web App的出现得益于各大浏览器厂商对HTML5标准的支持。

眼下主流操作系统iOS、Android以及Windows Phone的浏览器都对于html5大部分特性的支持也更加突显HTML5在未来移动设备端的地位。众所周知,HTML5不只给我们带来了很多其它语义化的标签,还有canvas画图、音频视频、本地存储、离线应用、地理位置定位等新特性。

【注】该部分具体信息參阅http://www.w3school.com.cn/html5/

Native App的优势:

1、优秀的用户体验和华丽的交互操作,可以针对不同平台提供不同用户体验;

2、可不受网络速度限制,节省带宽成本;

3、可訪问本地硬件设备和资源;

4、盈利模式明朗。

Native App的劣势:

1、不同平台之间的移植麻烦;

2、维持多个版本号的成本比較高;

3、须要通过第三方审核;

4、盈利须要与第三方分成。

针对Native App的不足,Web App非常好了弥补了这些劣势,开发商仅仅需了解HTML5、CSS3、js以及Device API就可以完毕应用在多终端设备和平台的执行,非常好的保证了应用跨平台的一致性,相对于Native App开发成本更低,同一时候更新维护更easy,用户差点儿没有安装成本,也更加自由和开放。但不论什么新技术总是有利有弊,Web App其自身也会遇到在用户体验、UI效果及调用本地设备和资源的相关问题。

Hybrid App

Hybrid App通常分为三种类型:多View混合型,单View混合型,Web主体型。

多View混合型:

即Native View和Web View独立展示,交替出现。眼下常见的Hybrid App是Native View与WebView交替的场景出现。这样的应用混合逻辑相对简单。即在须要的时候,将WebView当成一个独立的View(Activity)执行起来,在WebView内完毕相关的展示操作。这样的移动应用主体一般是Native App,Web技术仅仅是起到补充作用。开发难度和Native App基本相当。

单View混合型:

即在同一个View内,同一时候包含Native View和Web View。互相之间是覆盖(层叠)的关系。这样的Hybrid App的开发成本较高,开发难度较大,可是体验较好。如百度搜索为代表的单View混合型移动应用,既能够实现充分的灵活性,又能实现较好的用户体验。

Web主体型:

即移动应用的主体是Web View,主要以网页语言编写,穿插Native功能的Hybrid App开发类型。这样的类型开发的移动应用体验相对而言存在缺陷,但总体开发难度大幅减少,而且基本能够实现跨平台。Web主体型的移动应用用户体验的好坏,主要取决于底层中间件的交互与跨平台的能力。国外的appMobi、PhoneGap、国内的AppCan和Rexsee都属于Web主体型移动应用中间件。当中Rexsee不支持跨平台开发。appMobi和PhoneGap除基础的底层能力很多其它是通过插件(Plugins)扩展的机制实现Hybrid。而AppCan除了插件机制,还提供了大量的单View混合型的接口来完好和弥补Web主体型Hybrid App体验差的问题,接近Native App的体验。[红色部分的有争议,待完好。]

【摘自】http://www.iteye.com/news/25442  很多其它信息请查看此页。

【转载使用,请注明出处:http://blog.csdn.net/mahoking/article/details/30235243

參考文献:

1、http://www.w3school.com.cn/html5/

2、http://www.iteye.com/news/25442

移动开发 Native APP、Hybrid APP和Web APP介绍的更多相关文章

  1. App.js – 用于移动 Web App 开发的 JS 界面库

    App.js 是一个轻量级的 JavaScript UI 库,用于创建像本地应用程序的移动 Web 应用而不牺牲性能和体验.它是跨平台的,特定的UI设计,配置类似原生的过渡效果.App.js 的目的是 ...

  2. 触摸屏网站开发系列(一)-ios web App应用程序(ios meta)

    触摸屏网站的开发其实现在来讲比前几年移动端网站开发好多了,触摸屏设备IOS.Android.BBOS6等系统自带浏览器均为WEBKIT核心,这就说明PC上面尚未立行的HTML5 CSS3能够运用在这里 ...

  3. Native App, Hybrid App, Web App对比

    Native App,Hybrid App和Web App简介 目前基本所有的移动互联网app可以分为三类:Native App,Hybrid App和Web App. Native App是基于智能 ...

  4. 聊聊Web App、Hybrid App与Native App的设计差异

    目前主流应用程序大体分为三类:Web App.Hybrid App. Native App. 一.Web App.Hybrid App.Native App 纵向对比 首先,我们来看看什么是 Web ...

  5. 超赞!聊聊WEB APP、HYBRID APP与NATIVE APP的设计差异

    编者按:这3类主流应用你都了解吗?设计师除了要有视觉功夫,对不同形式的APP也应当了然于胸,今天百度的同学写了一篇非常全面的总结,帮你迅速搞定3类主流APP的设计方法,附带一大波避雷针,带你巧妙跳过A ...

  6. 什么是 Native、Web App、Hybrid、React Native 和 Weex?(转载)

    什么是 Native.Web App.Hybrid.React Native 和 Weex?   来源:zwwill_木羽 segmentfault.com/a/1190000011154120 一句 ...

  7. 【微信小程序项目实践总结】30分钟从陌生到熟悉 web app 、native app、hybrid app比较 30分钟ES6从陌生到熟悉 【原创】浅谈内存泄露 HTML5 五子棋 - JS/Canvas 游戏 meta 详解,html5 meta 标签日常设置 C#中回滚TransactionScope的使用方法和原理

    [微信小程序项目实践总结]30分钟从陌生到熟悉 前言 我们之前对小程序做了基本学习: 1. 微信小程序开发07-列表页面怎么做 2. 微信小程序开发06-一个业务页面的完成 3. 微信小程序开发05- ...

  8. Native、Web App、Hybrid、React Native(简称RN)、Weex 间的异同点。

    App常用开发模式简介 此处App为应用application,并非我们通常讲的手机App. 常用的几种APP开发模式-脑图 Native App 传统的原生App开发模式,有iOS和aOS两大系统, ...

  9. web app 、native app、hybrid app比较

    web app .native app.hybrid app比较 产品新人学习路 关注 2017.06.04 14:52* 字数 1887 阅读 11476评论 1喜欢 15 之前做讨论的时候,提出了 ...

随机推荐

  1. 神经网络BP算法C和python代码

    上面只显示代码. 详BP原理和神经网络的相关知识,请参阅:神经网络和反向传播算法推导 首先是前向传播的计算: 输入: 首先为正整数 n.m.p.t,分别代表特征个数.训练样本个数.隐藏层神经元个数.输 ...

  2. windows phone 页面导航(6)

    原文:windows phone 页面导航(6) 页面导航的例子我们使用的是两个页面,从第一个页面(MainPage)导航到第二个页面(SecondPage),然后可以从第二个页面导航到第一个页面 , ...

  3. QTP小应用一则

    昨天收到一个任务,将270多个视频文件按照统一的编码要求,转换为其他格式,而且给的转换器居然不能批量转换! 在痛苦地转换了30多个之后,我才想起来使用QTP的数据驱动测试方法可以解决这个问题! 于是我 ...

  4. Intel baytrail-t support Linux?

    点击这里查看文章 有空试试---唉... Ubuntu (Linux) on Atom Z3700 Series ASUS Transformer Book T100 is particularly ...

  5. Codeforces 107B Basketball Team 简单概率

    题目链接:点击打开链接 题意: 给定n m h 表示有m个部门,有个人如今在部门h 以下m个数字表示每一个部门的人数.(包含他自己) 在这些人中随机挑选n个人,问挑出的人中存在和这个人同部门的概率是多 ...

  6. unity3d 数学的数学基础和辅助类

    转载注明smartdot:http://my.oschina.net/u/243648/blog/67193 1.  数学(点乘/叉乘)/unity3d的数学辅助类 2.  坐标系统(本地/世界/屏幕 ...

  7. Linux如何用QQ?Linux下QQ使用的几种方案

    在linux下如何使用QQ?在ubuntu11.10中如何使用QQ?或许有初涉linux的人这样问,我们可以看看ubuntusoft总结出来的几种在linux系统下用QQ的方法.前面的几种主要的方法都 ...

  8. Linux date -s(转)

    修改linux的时间可以使用date指令 修改日期: 时间设定成2009年5月10日的命令如下: #date -s 05/10/2009 修改时间: 将系统时间设定成上午10点18分0秒的命令如下.  ...

  9. 配置Tomcat的日志系统

    成功配置tomcat的log4j日志系统,格式:HTML+每天以yyyy-mm-dd.log命名的日志文件 一.引言: 实习单位让用log4j配置webapp的日志系统,要求产生的日志文件是html格 ...

  10. ContentProvider的使用

    这方面的资料应该网上已经很多了,我在这里只是做简单的总结就行了. 如题:ContentProvider是android的内容提供器,可以为应用程序提供各种的数据,例如数据表,txt文件,xml文件等等 ...