html5历史

w3c从2008年提出html5的概念,目前html5的版本已经趋于稳定,也逐步得到了业界的认可和接受。

以前我们有一个疑问,HTML5与Flash究竟谁将在移动互联网时代称霸市场?这个问题在最近有了答案,
Adobe公司宣布停止android平台的flash插件更新,正式宣布推出移动领域。也就是说html5又干掉了一个竞争对手。

html5对于移动开发领域的贡献主要是web app方面,如离线存储,画布等优秀的支持。

移动App分类

1 原生态NativeApp

A native app is an app for a certain mobile device (smartphone,
tablet, etc.) They’re installed directly onto the device. Users
typically acquire these apps through an online store or marketplace such
as The App Store or Android Apps on Google Play.

安装在特定设备上,用户通过移动应用商店获取和安装应用。

现在存在的问题或者说是困惑:

升级困难
通过应用商品审核
对于开发团队来说,增加了开发成本
适配困难

通过一个案例来说明原生态app的劣势,某个开发团队开发了一个IOS应用,提交苹果应用商品审核,审核过程其实就是一个阻塞过程,假如说这个过程
使用了30天,可以设想在这30天的时间内,这个应用的同类型应用已经上线了。好了,审核通过了,用户通过应用商店下载应用安装到本地手机,使用的过程中
发现了问题,bug,不合理的地方,开发团队得到了反馈,修改后,还是需要走原来同样的流程。周期,依然在阻塞,远远没有通过web
servevr端部署,客户端浏览器浏览来的快。对于客户端,更新后的应用还能赢得用户卸载又重新安装吗?卸载,安装,这样繁琐的工作,用户能接受吗?
这个case暴露的问题也就是本地app面临的困境

2 Web App: 通过浏览器访问

They’re accessed through the mobile device’s web browser (i.e. on the
iPhone, this is Safari by default) and they don’t need to be downloaded
and installed on the device.

为什么移动端浏览器厮杀如此惨烈,uc,qq,360移动浏览器都对html5特性做了很好的支持,原因可以概括为:它们都在争夺用户在移动端的网络入口,从而更好的为用户推送内容。商业推动...

web app结合html5的优秀能力可以提供

离线存储
迅速更新产品,完善用户反馈
很好的跨平台,无需安装成本

正是html5优秀的扩展能力,使得web app在用户体验方面可以与native app越来越接近。当然web app的劣势集中在宽带,手机屏幕大小等方面。

3 混合模式 Hybrid App

结合以上两种的优势,推出的一种移动端app形式,业界称之为Hybrid App,看上去是一个Native app,但只有一个UI WebView,里面访问的是一个Web App,html5的页面时核心。

或许以上都是一种过渡模式,最终会回归现在的B/S模式。快速迭代,优秀的用户体验

工具与开发

全面拥抱html5,可以使用vs2012开发移动端产品。

跨平台的开发工具,PhoneGap或者AppCan,可以帮助开发者迅速开发app产品。
注意appcan网站的图标 web模式和native模式,正是对于app分类的web app与native模式

参加完会议几点感受

移动互联网的确在拥抱html5,html5对传统网页元素能力的扩充和提升令人赞叹。

HTML5开发教程:http://www.2cto.com/kf/web/html5/

HTML5 的成长之路的更多相关文章

  1. Web前端工程师成长之路

    一.何为Web前端工程师?        前端工程师,也叫Web前端开发工程师.他是随着web发展,细分出来的行业.Web前端开发工程师,主要职责是利用(X)HTML/CSS/JavaScript/D ...

  2. 小强的HTML5移动开发之路(13)——HTML5中的全局属性

    来自:http://blog.csdn.net/dawanganban/article/details/18179483 一.accssskey  快捷键 <!DOCTYPE HTML> ...

  3. 小强的HTML5移动开发之路(11)——链接,图片,表格,框架

    来自:http://blog.csdn.net/dawanganban/article/details/18098193 一.HTML是什么? HTML(hypertext mark-uplangua ...

  4. redis成长之路——(二)

    redis操作封装 针对这些常用结构,StackExchange.Redis已经做了一些封装,不过在实际应用场景中还必须添加一些功能,例如重试等 所以对一些常功能做了一些自行封装SERedisOper ...

  5. redis成长之路——(一)

    为什么使用redis Redis适合所有数据in-momory的场景,虽然Redis也提供持久化功能,但实际更多的是一个disk-backed的功能,跟传统意义上的持久化有比较大的差别,那么可能大家就 ...

  6. 【腾讯Bugly干货分享】JSPatch 成长之路

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/579efa7083355a9a57a1ac5b Dev Club 是一个交流移动 ...

  7. redis成长之路——(七)

    扩展性封装 虽说现在StackExchange.Redis免费,万一到时候和servicestack.redis一样要收费呢,所以先留一口,后续的可以再处理 实例代码点击这里查看 redis成长之路- ...

  8. redis成长之路——(六)

    redis配置 为了码农在代码上只关心业务以及代码上的统一性,wenli.drive.redis内部使用配置来完成那些不同的场景,也就是说随便填填配置就能适应不同的场景! 当然配置多了码农也会受不了, ...

  9. redis成长之路——(五)

    单例.哨兵.Cluster redis应用广泛,主要体现于实际场景的可用化,但是对于码农来说初步入手很多理念难以理解:码农的想法就是:为什么我要管那么多,我只想用,能用就行!所以必须将三个场景透明化. ...

随机推荐

  1. 【AtCoder Beginner Contest 074 D】Restoring Road Network

    [链接]h在这里写链接 [题意] 给你任意两点之间的最短路. 让你求出原图. 或者输出原图不存在. 输出原图的边长总和的最小值. [题解] floyd算法. 先在原有的矩阵上. 做一遍floyd. 如 ...

  2. 具体解释。。设计模式5——DAO。。studying

    设计模式5--DAO ★ 场景和问题 在Java程序中,常常须要把数据持久化.也须要获取持久化的数据,可是在进行数据持久化的过程中面临诸多问题 (如:数据源不同.存储类型不同.供应商不同.訪问方式不同 ...

  3. swift开发多线程篇 - NSThread 线程相关简单说明(一些使用和注意点)

    一 说明 本文涉及代码可以从https://github.com/HanGangAndHanMeimei/Code地址获得. 二 NSThread的基本使用和创建 1)基本用法(主线程|当前线程) 1 ...

  4. js匿名函数(变量加括号就是函数)

    js匿名函数(变量加括号就是函数) 一.总结 变量加括号就是函数,而函数的括号是用来传参的 1.类比:以正常函数去想匿名函数,匿名函数比正常函数只是少了函数名,本质还是一样,该怎么传参还是怎么传参,小 ...

  5. Log4net.confager配置

    <?xml version="1.0" encoding="utf-8"?><log4net>  <level value=&qu ...

  6. 使用wepy开发微信小程序商城第三篇:购物车(布局篇)

    使用wepy开发微信小程序商城 第三篇:购物车(布局篇) 前两篇如下: 使用wepy开发微信小程序商城第一篇:项目初始化 使用wepy开发微信小程序商城第二篇:路由配置和页面结构 基于上两篇内容,开始 ...

  7. vue中的select框的值动态绑定

    <--这两种写法效果一样--> 1: <select v-model="wxStatus"> <option label="已添加" ...

  8. @EnableAsync和@Async开始异步任务支持

    Spring通过任务执行器(TaskExecutor)来实现多线程和并发编程.使用ThreadPoolTaskExecutor可实现一个基于线程池的TaskExecutor.在开发中实现异步任务,我们 ...

  9. [Angular2 Router] Preload lzay loading modules

    From router v3.1.0, we have preloading system with router. PreloadAllModules After the init module l ...

  10. css3-13 css3的3D动画如何实现

    css3-13 css3的3D动画如何实现 一.总结 一句话总结:这里是transform+setInterval实现.transform属性里面的rotate属性值变成rotateX或rotateY ...