一起谈.NET技术,HTML5 - 搭建移动Web应用

  关于HTML5

  HTML5具有语义学、本地存储、设备访问、连接性、多媒体、平面和三维效果、性能和集成和CSS3八大技术特征。让Web应用进入无插件时代,在功能和性能上逼近桌面应用。促使应用Web化,实现跨平台。

  HTML5规范草案将于2012年发布候选推荐版,2022年发布计划推荐版。规范的实现似乎还在遥远的未来,其实不然!当前很多浏览器已经部分支持HTML5,caniuse.com提供了详尽的浏览器支持情况。HTML5规范本身并不多,很多相关规范都被独立出来,由浏览器各自实现。      

  移动Web应用方向

  手机上网已经成为最重要的上网方式之一,手机网民已达3亿。移动互联网时代已经开启,发展势头迅猛,成为互联网行业的新战场。    

  Android和iOS手机的兴起,加速了HTML5在移动设备的普及。与桌面浏览器不同的是,移动操作系统和浏览器随着手机的换代而不断升级。移动浏览器的不断升级,给HTML5在移动Web方向的发展提供源源不断的动力。也随着设备性能的不断提高,移动Web应用的能力也渐渐逼近客户端应用。    

  移动Web应用对比客户端应用的优势:

  1. 更多开发人员有丰富的Web开发经验和工具积累,也形成了成熟的开发社区
  2. 迭代更敏捷,实现持续更新
  3. 跨平台,开发成本比客户端的较低

  Web应用宿主选择

  Web都有宿主,宿主是运行程序所需要的环境。Web常见的宿主有IE、FF、Chrome这些浏览器。Javascript也运行在服务器端宿主,如node.js。在移动设备,移动Web可以运行在移动浏览器上,也可以运行在PhoneGap或Titanium等框架宿主上。当然我们也可以根据跨平台需要编写自己框架宿主。              

  框架宿主优势:

  1. 已形成成熟的社区,便于解决问题
  2. 如PhoneGap等,比浏览器拥有更高权限。可以访问联系人、文件、摄像头、录音等设备
  3. 可以通过模拟器进行测试,减少跨浏览器测试成本

  框架宿主劣势:

  1. 以客户端形式发布,版本更新难度大,动态发布需要额外代码支持
  2. 系统有可能只支持单进程
  3. 产品之间无法跳转,不容易衔接      

PhoneGap兼容性

  移动浏览器是系统附带的,不需要发布,随着系统升级而更新。在没有权限要求和高端目标设备的情况下,浏览器宿主作为移动Web应用宿主更为适合。

  Android浏览器   Mobile Safari

  浏览器宿主优势:

  1. 无需发布,浏览器一般还支持桌面快捷方式
  2. 产品更新维护方便,可以实现持续更新
  3. 移植性高(相对框架宿主的一些自定义接口)

  浏览器宿主劣势:

  1. 浏览器兼容不高,对HTML5支持有差异
  2. 性能差异大,必须考虑设备间处理能力的差异
  3. 测试成本大(特别是Android系统设备),无法覆盖所有机型

  移动Javascript框架

  在HTML5的支持下,交互集成取代Javascript浏览器兼容性成了移动Javascript框架的发展方向。其中jQuery Mobile和Sencha Touch最受追捧。

  他们主要解决:

  1. 交互(包括UI设计、控件交互、页面切换等)集成
  2. Touch手势                

  交互集成框架优势:

  1. 交互都符合设备交互特点和设计规范(Android和iOS)
  2. 开发门槛低,适合快速开发
  3. 开发社区已经有丰富的跨平台经验和较全面的测试结果

  交互集成框架劣势:

  1. 文件体积较大,效率往往不如原生HTML5
  2. 交互模式固定,难以摆脱

  没有完善的业务框架,还需要自己实现基础业务框架(代码更新、业务模块重用等)     

jQuery Mobile 兼容性

  除了交互集成框架,我们还可以考虑使用原生HTML5开发自己的移动Javascript框架。自己开发更有针对性和目的性,适合业务扩展和性能优化,可以弥补集成框架的缺陷。

  原生HTML5框架优势:

  1. 最适合长期业务扩展
  2. 开发灵活度更高
  3. 可针对目标设备的性能优化

  原生HTML5框架劣势:

  1. 暂时只能兼容高端设备(Android2.0+、iOS3.2+性能较佳)
  2. 跨平台测试成本比较高
  3. 框架开发门槛比较高,需要一段时间发展

  参考资料

  http://www.caniuse.com

  http://www.w3.org

  《2010年中国手机上网用户行为研究报告》

  《2010-2011年中国智能手机市场研究年度报告》

时间: 2024-11-13 06:37:32

一起谈.NET技术,HTML5 - 搭建移动Web应用的相关文章

一起谈.NET技术,为Expression Web 4 添加HTML5 标签支持

大家都知道Expression Web 4 是用来编写网页脚本的一款软件,包含的语言类型涉及:HTML.ASP.PHP.CSS,但它并不支持HTML5.如下图所示,在HTML5 中的<canvas> 标签并不能获得智能感应,这样在开发过程中会变得很麻烦.本篇将介绍如何为其添加HTML5 标签支持.首先需要下载HTML5 模板插件,将得到一个名叫"HTML5Schema.xadd" 的文件. 安装HTML 5 Schema 在"Tools"菜单中选择&qu

一起谈.NET技术,Silverlight面向客户端,HTML5面向Web

Bob Muglia在PDC 2010讲到Silverlight的时候,说"我们的策略已经转移了",事后,他又试图澄清这到底是什么意思.Steve Ballmer和Tim Heuer也对Silverlight发表评论,试图重新让社区确信微软对Silverlight的承诺,但是他们也指出这样的事实,HTML5是针对跨平台开发的解决方案,而Silverlight针对的是客户端和Windows Phone. ZDNet的编辑Mary Jo Foley采访了微软服务器和工具部门主席Bob Mu

HTML5 - 搭建“.NET研究”移动Web应用

关于HTML5 HTML5具有语义学.本地存储.设备访问.连接性.多媒体.平面和三维效果.性能和集成和CSS3八大技术特征.让Web应用进入无插件时代,在上海徐汇企业网站制作功能和性能上逼近桌面应用.促使应用Web化,实现跨平台. HTML5规范草案将于2012年发布候选推荐版,2022年发布计划推荐版.规范的实现似乎还在遥远的未来,其实不然!当前很多浏览器已经部分支持HTML5,caniuse.com提供了详尽的浏览器支持情况.HTML5规范本身并不多,很多相关规范都被独立出来,由浏览器各自实

《精通Spring MVC 4》——第1章 快速搭建Spring Web应用 1.1Spring Tool Suite简介

第1章 快速搭建Spring Web应用 在本章中,我们将会直接接触代码并搭建一个Web应用,本书的其他章节将会基于该应用进行讲解. 在这里,我们将会使用Spring Boot的自动配置功能来构建应用,这样的话,就能完全避免使用样板式的配置文件. 本书中将会使用Gradle和Java 8,但是也不必为此感到担心.如果你还在使用Maven和更早版本的Java的话,相信你会发现这些技术也是很易于使用的. 很多官方的Spring教程同时提供了Gradle构建和Maven构建,因此,如果你决定继续使用M

使用 HTML5 canvas 进行 Web 绘图

使用 HTML5 canvas 进行 Web 绘图 新的 HTML5 规范旨在帮助开发人员更轻松的编写出各类 Web 应用,以顺应当前 SaaS,云计算以及 RIA 等技术的最新趋势.在 HTML5 得以广泛推广之前,开发人员通常使用 SVG,VML 等技术进行 Web 绘图操作,但这些基于 XML 的绘图语言声明式的绘图方式并不能满足复杂绘图操作在性能上的需求,比如 Web 游戏所需要的像素级别的绘图能力.HTML5 canvas 元素的出现填补了这种不足,开发人员可以使用 JavaScrip

【入门篇】Nginx + FastCGI 程序(C/C++) 搭建高性能web service的Demo及部署发布

由于最近工作的需要,本人学习了一下利用高性能web server - Nginx,来发布C/C++编写的fastCGI程序,详细细节如下.     1.介绍     Nginx - 高性能web server,这个不用多说了,大家都知道.     FastCGI程序 - 常驻型CGI程序,它是语言无关的.可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能.     Nginx要调用FastCGI程序,需要用到FastCGI进程管理程序(因为nginx不能直

讲解使用Docker搭建Java Web运行环境_docker

Docker 是一种"轻量级"容器技术,它几乎动摇了传统虚拟化技术的地位,现在国内外已经有越来越多的公司开始逐步使用 Docker 来替换现有的虚拟化平台了.作为一名 Java 程序员,我们是时候一起把 Docker 学起来了! 本文会对虚拟化技术与 Docker 容器技术做一个对比,然后引出一些 Docker 的名词术语,比如:容器.镜像等,随后将使用 Docker 搭建一个 Java Web 运行环境,最后将对本文做一个总结. 我们先来回顾一下传统虚拟化技术的体系架构: 可见,我们

详解使用Docker搭建Java Web运行环境_docker

这周末体验了一下挺火的Docker技术,记录学习笔记. >Docker是干什么的 Docker 是一个基于Linux容器(LXC-linux container)的高级容器引擎,基于go语言开发, 源代码托管在 Github 上, 遵从Apache2.0协议开源.Docker的目标是实现轻量级的操作系统虚拟化解决方案. 学习Docker首先要了解几个概念: 镜像-Docker的镜像和常见的系统ISO镜像类似,包含了应用程序的信息: 容器-容器相当于一个可以运行起来的虚拟机,应用程序运行在容器中,

HTML5将重塑Web世界?,互联网营销

HTML5将改变互联网的方方面面.HTML5可能不会完全取代Flash,但它会重塑互联网,使浏览器无需借助插件就可以做更多的工作,从位置跟踪.视频播放到把云端的数据缓存到本地,最终能使互联网更安全.更高效.更灵活. HTML5将重塑Web世界? ■ 乐天 编译 Adobe和Apple围绕Flash发生的冲突是今年上半年的一个焦点事件,引起了很多人的关注,其中有不少人因这一事件第一次了解到 HTML5的存在.初次了解HTML5的人可能会非常惊讶,HTML5规范早在6年前就开始制定了,如今尽管HTM