BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

移动平台上的HTML5技术是否华而不实

| 作者 崔康 关注 0 他的粉丝 发布于 2013年3月17日. 估计阅读时间: 8 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

时至今日,HTML5技术已经不再是停留在纸面上的标准了,越来越多的公司和开发者尝试把HTML5技术应用到前端领域,到底HTML5能够对移动开发者带来多大的改进?它的前途是否值得期待?社区对此褒贬不一,有人认为HTML5的优势无可比拟,机会越来越多,有人则持不同观点,认为有炒作之嫌,HTML5在实际应用中存在诸多现实问题。

刘铁锋认为基于HTML 5的开发会越来越多,主要基于三点原因:

  • 入门的门槛(影响了开发者的基数和成本)
  • 开发的成本(雇佣多个平台开发人员,还是一个平台开发人员)
  • PC上的发展趋势

同时,他也指出目前HTML5的开发还不成熟,可以归纳为以下几点:

  • 浏览器内核能力不够强(渲染速度、界面响应速度、通过GPU加速的能力)不够,对于基本HTML 5的标准支持并不是最大问题。PC的浏览器已经接近完全,手机上海豚浏览器的内核已经可以达到480+, 通过Facebook的Ringmark测试的Ring 1 (非广告,只是为了说明技术上的可行性).
  • 浏览器访问移动设备的能力(标准的发展和用户的需求有差距)
  • 浏览器的编程模型的限制(单进程的模型,依赖于DOM数据处理的模型)

刘铁锋认为困难是暂时的:

目前手机的硬件能力已经在提升,双核1G,Android 4.0的MTK山寨手机已经只要500块。双核1.5G只要900块。性能不会是最大瓶颈,那么PC上已经跑起来的典型应用,在手机上都会起来。如果对比PC上的发展局面,其实已经展示了手机HTML 5发展的未来。

王亞暉指出了HTML5的两个关键优势:

  • 跨平台特性,基本上有浏览器的地方就能有HTML5应用。
  • 相对开发成本较低,学习曲线并没有传统游戏开发那么陡峭。

他提到了自己去年的实际开发经历:

我前半年一直在做一款有点社交和LBS性质的纯 HTML5的webapp,前端纯粹HTML5,后端Scala,现在又在纠集了几个朋友做一款HTML5的大型页游,前端HTML5,后端node。之所以不选择Flash是因为,对于移动平台的支持度很糟糕同时,Flash本身也是浏览器不稳定因素的诱因之一。

这个(注:指跨浏览器)其实据说挺容易的,我身边是一个以前Opera的人在做,据说比Opera做hack容易的多。我自己也试过把网上一些现成HTML5游戏做跨平台跨浏览器移植,确实不是很麻烦,一些现有的解决方案能给人省掉90%的开发时间,也绝对比我之前适应Android各个系统各个分辨率各个商店的体验开心的多。

HTML5+Node.js基本上是一个天生适合做游戏的搭配,网易不久前出了一个叫pomelo的游戏引擎,磊友马上也要出一款 HTML5的大型页游,我也听说几家大公司也在做类似的开发,同时我认识一个在厦门的团队也野心勃勃的做一款HTML5的大型3D页游。如果不出意外估计明年底后年初会是一个纯HTML5游戏的爆棚期。传统的web app也是如此,我前几天去Mozzila串门,看了一下FirefoxOS上的一些东西,表现还是非常的惊艳。

王亞暉特意澄清了HTML5被妖魔化的一些方面:

  • 运算速度慢——这个确实是,尤其是手机上。但计算机行业什么时候运算速度成了限制,想想5年前手机的原生程序是什么一个状态,再看看现在的,五六百就能买到一个跑3D游戏的智能手机了。而且事实上iOS开了一个很好的头,Safari有硬件加速,所以效率极高,基本上web app的延迟是在一个完全可以接受的范围之内。相比较本地处理能力,真正大的问题在网速和电池上。这个确实短期不好解决。但在PC上,这也不是问题。
  • 版本分裂——这个基本上跟开发者关系不大,而且真正分裂的焦点是在版本进度把握上。只是一个希望把标准写死了,一个希望更灵活。

对HTML5技术持相反意见的开发者也不少。

王斌认为HTML5技术是一场炒作,“因为周围,无论国内还是国外,都是叫好不叫座”。具体来说:

  • 功能和性能有限。就拿HTML5中最大的亮点Canvas来说,想用这玩意取代Flash,基本是不可能的。Canvas才提供多少个API,那几个绘图函数实在太简陋,和Flash极其强大的各种特效相比简直大巫见小巫,更别提Flash的动画能力了。
  • 用JS来做动画和特效,效率太低。Flash Player里面对各种浮点数、矢量绘图的优化,简直到了超越普通硬件加速的地步。
  • 现在HTML5已经开始分裂了,分裂成两个标准。本来就不是标准的东西,还继续分裂···前途简直没有。
  • 开发工具几乎没有,就更别提和Flash IDE相比了···
  • 各种浏览器支持的也有限。拿PC上的Chrome去打开那些所谓的HTML5的站点,经常卡死。要知道Chrome的核心dll一个就接近50m,这么庞大的东西,支持HTML5还这么差,更别提移动设备那些有限的资源了。我是觉得,那些手机浏览器,解析各种HTML4的网页都不一定标准,就更别提HTML5了··

他总结道:

那些赞美HTML5的,基本都是一厢情愿而已。尤其IE6都还坚挺,XP还占据40%市场的中国,想推广HTML5,太难。10年前有人大呼什么IPV6\ X64之类的时代要到了,可目前可以说还是早的很。十年前我就在关注一项矢量绘图技术:SVG,绝对比Canvas绘图能力强大,可惜一直没有商业公司推广,以至于现在几乎没人知道。

再进一步,所谓的HTML5,之所以拿出来炒,最大的原因恐怕还是乔布斯这人,想在商业上踢翻Adobe。要知道Flash一旦成为标准,在对开发者要求极其苛刻的iOS平台,一切都将可以绕过苹果的限制。所以乔布斯才出如此极端之做法。现在乔布斯已逝,HTML5 的前景堪忧啊。

除此之外,还有不少讨论者持类似的态度,他们认为HTML5存在的主要问题,包括以下几点:

  • 开放式标准带来的问题是,没有能真正提供一个好生态环境及开发体验。很多开发者都有“我不知道该用HTML5做什么” 的感觉。
  • HTML5的权限、API都不够用,很多本地随手就实现的功能HTML5得折腾很久。JS的调试也很麻烦。好不容易开发出来了,素材,代码都不能加密。
  • 动画效果,HTML5的加载速度慢,帧率跟本地比明显不够。
  • HTML5完全是牺牲体验的典型。所谓的跨平台如果是通过增加开发难度,功能性能缩水来实现也就毫无意义了。宁可在一个平台上做80分,也不要在两个平台上各得50分。
  • 基于HTML5的应用,需要浏览器进行执行,如果是Firefox OS这类浏览器操作系统,耗电问题可能会得到一定程度解决。但是安卓上的浏览器或iOS浏览器再执行Web应用,势必会更加耗电。

有关社区讨论的详细内容,读者可以查看知乎社区的相关文章。欢迎读者特别是前端领域的开发者发表对HTML5技术发展前景的看法。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

HTML5是阿斗,Flash是溥仪 by Song Hanson

HTML5是阿斗,Flash是溥仪。这个类比实在是极端了些,但确是我的想法。

HTML5所谓什么都能做,其实也是有限的“什么”;而且无论是Canvas、CSS动画这些主打功能,还是GPS等新兴功能,如果以原生App为满分的话,HTML5都打不了高分,甚至不及格;好吧,用HTML5做到跨平台了,代价呢?IDE在哪里?难道不需要任何trick?难道不需要针对各种设备做进一步适配?

Flash是一个时代的见证,说句良心话,MacroMedia和后来的Adobe在Flash跨浏览器跨平台上做的努力,远比各大浏览器厂商做的要更多,更到位。只可惜,Adobe运作平台的能力还是有所欠缺,有力的盟友太少,同时也树立了不该树立的敌人。当时Adobe放弃移动版Flash Player和Flex已经表明他已无心再力挽狂澜。

除去这两个候选,其实现在是一个真空期,其他可选的只有原生App而已。

深感赞同后者的描述 by huang hui

现在的困扰貌似就是乔布斯给挑起的,假如放开ios的限制,我想现在大多就毫不犹豫选择flash了吧。html5的各种问题也确实感觉蛮致命的,而且将来或许还会碰到更多目前未知的。不过js还算是个不错的语言工具吧。

Re: HTML5是阿斗,Flash是溥仪 by huang hui

其实我觉得将来还是会以具体的实用性来选择,相信群众的眼光最终还是会雪亮的啊。任何一个开发者都不想因为一些高层的矛盾,导致了自己的工作烦恼吧,而且矛盾最终也会被化解的吧。

冷静头脑,辩证选择 by huang hui

各种技术都有各自的特点和优势,还需要用辩证的眼光看待,一项成熟的技术必定是有其存在的核心价值,一项心的技术更需要有虚心的态度缓步发展,而不是浮夸自己克制其他。不管什么技术,用到位了就是最好的,这个需要有智慧的决策者根据项目具体的需要和特点来选择。

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

4 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT