广州web培训
达内广州五羊中心

18087159764

热门课程

HTML5第二阶段:移动互联网

  • 时间:2016-09-30
  • 发布:广州前端开发培训
  • 来源:xfenglin.com

随着 Chrome 和 Safari 的高歌猛进,以及 IE+Flash 的衰落,HTML5 告一段落,进入了下一个时代——移动互联网。达内广州web培训看到HTML5 的跨平台优势在移动互联网时代被进一步凸显。HTML5 是唯一一个通吃 PC、Mac、iPhone、iPad、Android、Windows Phone 等主流平台的跨平台语言。Java 和 Flash 都曾梦想这个位置,但梦断于 iOS。此时人们纷纷开始研究基于 HTML5 开发跨平台手机应用。很多人当时认为,原生应用只是过渡,就像当年从 C/S 结构转变为 B/S 结构一样。而且学习 Objective-C 和 Java 很费劲,我既然会网页开发,为何不试试 HTML5。

W3C 此时成立了 Device API 工作组,为 HTML5 扩展了 Camera、GPS 等手机特有的 API,然而麻烦的是,移动互联网初期的迭代太快了,手机 OS 在不停的扩展硬件 API,陀螺仪、距离感应器、气压计……每年手机 OS 都有大版本更新。而 W3C 作为一个数百家会员单位共同决策的组织,从标准草案的提出到达成一致是非常复杂的过程,跟不上移动互联网初期的快速迭代。

PhoneGap 的出现,给开发者打开了一扇窗。很多人期待 PhoneGap 不停扩展 API,来补充浏览器的不足。Adobe 看到 PhoneGap 仿佛看到了重振江湖地位的希望,但在 Adobe 收购 PhoneGap 后,又发现这个东西问题很多,而且开源使得 Adobe 无法像 Flash 那样获取商业利益,于是就把 PhoneGap 捐给了 Apache,改名为 Cordova。

因为各种原因,Cordova 的定位最终没有成为浏览器的强化,而走向了混合式开发。基于当时的背景,他们认为原生是不可替代的,“原生 +HTML5”的混合模式更有意义。所以现在 Cordova 的使用往往是“原生工程师 +HTML5 工程师”一起协作完成 App。

这时 Facebook 加入了 W3C,牵头成立了 Mobile Web 工作组。Facebook 是混 Web 圈的,并且在手机 OS 上并无自己的领地,他不喜欢被苹果和 Google 掌控的原生应用生态系统。Mobile Web 这个工作组的重要目标就是让 HTML5 开发的网页应用达到原生应用的体验。然而,事与愿违,它不努力也就算了,结果是努力了却失败了。2012 年,Facebook 放弃了 HTML5 的新闻充斥了全世界的 IT 媒体,HTML5 瞬间被打入冷宫。

Facebook 为何放弃 HTML5?达内广州web培训认为核心是当时基于 HTML5 真的做不出好的移动 App。对比 Twritter 等竞争对手的原生 App,Facebook 的 HTML5 版本实在无法让用户满意。比如 Push 功能,到现在 HTML5 的推送和原生的推送体验差距依然巨大,更不用说 HTML5 应用的页面切换白屏、下拉刷新 / 侧滑菜单不流畅等众多问题。看着原生工程师轻松实现摇一摇、二维码、语音输入、分享到朋友圈等功能,更是让 HTML5 工程师感觉自己站错了队。

即使 Facebook 不喜欢被控制,也不能拿被用户抛弃来冒险。而且 Facebook 并没有掌握关键点—手机浏览器内核。如果浏览器不跟上,其他都是白搭。

而浏览器在手机上的表现是什么呢?先跟达内广州web培训来看 Google,Chrome 性能虽高,但 Android 上的浏览器却并非 Chrome,而是 WebKit 改出来的一个蹩脚的 Android 浏览器;再看苹果,iOS 上不允许其他浏览器引擎上架 App Store,而且其他使用 Safari 引擎的应用也无法调用苹果自己的 JavaScript 加速引擎 Nitro。结果是苹果和 Google 不但不在浏览器上积极实现 HTML5 关于移动 App 所需的规范,反而对 HTML5 做出种种限制。

不管是当时硬件能力不足,还是手机 OS 厂商的故意限制,总之结果很明显:在移动互联网的初期,一定是原生应用生态系统的天下,iOS 和 Android 首先把自己变成老大后,其他小弟才能寻觅到成长的机会。

Facebook 也好,PhoneGap 也好,想在移动互联网初期就分一杯羹是分不到的,但坚持下来,机会往往会出现。

上一篇:HTML5第一阶段:Web增强与破垄断
下一篇:HTML5 这回真的来了

达内广州web培训详解ES6循环:for-of

达内广州web培训详解ES5循环:forEach

达内广州web培训详解ES5简单for循环

达内广州web培训分享:CSS预处理器的缺点

选择城市和中心
贵州省

广西省

海南省