另外HTML5是一系列技术的统称,包括js,所以你说HTML5会替代js这样的说法有问题,他俩是包含与被包含的关系。
现在是有很多人使用html5开发,如微信的js sdk等等;但是html5不是取代js的,也不会完全取代flash,而是基本上要取代flash。
现在IOS系统只支持html5,不支持flash。安卓系统也都支持html5,只是他们支持的程度差异化很大。
html5只是刚起步,在2014年末才正式发布。就行当初java一样。
2014年10月29日,万维网联盟泪流满面地宣布,经过几乎8年的艰辛努力,HTML5标准规范终于最终制定完成了,并已公开发布。
扩展阅读:
中国互联网企业的努力
早些时候,国内互联网企业似乎很少会想到去和W3C这样的国际标准机构打交道,但如果我们不参与到这样的标准制定中,就很难在相关领域获得足够的话语权。
百度的觉醒比较早,也许这和他们浓郁的技术气息有关。早在2011年9月,百度就成为了中国首个受邀加入W3C的互联网企业,第二年8月,百度就向W3C HTML工作组提交了测试用例,并且获得通过,成为中国第一家向该工作组提交测试用例的公司。
到2013年,百度在互联网标准制定的进程上更进一步,与W3C联手举办了Test The Web Forward(简称TTWF)2013上海站活动,吸引了大量开发者加入。该活动是由百度、 Adobe、 Google、Mozilla、微软、Opera等W3C成员在世界各地组织的系列现场极限编程活动,自2012年6月在美国旧金山举办之后,已经在北京、巴黎、悉尼、西雅图、东京等城市举办过,吸引了大量开发者为HTML5各项规范撰写测试用例。这次的活动上,总计向W3C提交了1003个Web标准测试用例,找到35个Bug,大幅度刷新了TTWF全球系列活动中提交测试用例和Bug的数量。百度还设计开发了能够评测各种浏览器对HTML5支持能力的测试框架以及WebApp的一站式评测系统,可以对不同类型的WebApp进行有针对性的性能评测,覆盖各种性能指标,并给出详细分析和相关优化建议。
从这些活动上,也可以看到中国对于Web标准化上的巨大热情。在此之后,腾讯、360等国内公司也快速展开与W3C的相关合作了。也就是说,目前被正式发布的HTML5中,来自于中国的力量不可小觑。
持续推动的Web标准
今年,中国互联网标准化的进程再次被改写。在HTML5的标准建议中,有了一条来自于中国的建议。又是百度,他们又一次在Web标准化上的工作走到国内前列,其制定的首屏渲染优化会员提案已经被 W3C正式接受,这是中国第一次,也是目前唯一的一次。
首屏渲染优化规范主要应用在移动端,加速移动端Web页面对于用户的呈现速度。对于普通手机页面,由于代码规模较小,很少的代码就可以填充整个页面, Web开发者通过该规范,可以指示浏览器进行合适的首屏内容提前绘制,从而加快首屏展现速度,显著缩短用户首次看见非白屏页面时间。该提案的接受,也获得了W3C的高度好评。这表明了,百度在Web标准工作上,确实不是一时之举,而是长期以来支持不懈的努力和工作。
百度的工作很快不但获得了国内其它互联网企业的响应,腾讯、UC Web加入到首屏渲染优化提案的阵营中,而且也获得了工业和信息化部电信研究院的支持,中国企业在Web标准制定上,站在了一条战线上,共同努力。我们也相信,未来这样的标准化工作会越来越多。
与国际生态产业进行持续交流也必不可少,据了解,仍然以百度为例,他们每年都会参加W3C TPAC会议,与该领域内的专家们一套讨论规范制定的合理性、高效性,与国际知名企业一起,共同探讨、商定开放Web平台未来的技术方向,。
中国互联网创造未来
中国互联网企业在Web标准化上的不懈努力,也赢得了W3C的高度好评。W3C中国区总经理李安琪表示,“此次TPAC会议上,百度工程师向W3C HTML工作组和 Web Performance工作组详细介绍了首屏渲染优化会员提案,这是首份来自中国的会员提案,对于中国行业参与Web标准化工作,争取Web国际标准话语权,具有里程碑式的意义。此次百度与腾讯、UCWEB、电信研究院等机构联合提案,整个过程对于更多中国企业参与Web国际标准工作有非常好的借鉴作用。W3C希望能够收到更多来自中国的提案,以保证W3C标准满足中国行业的诉求。“
HTML5带来了一组新的用户体验,如Web的音频和视频不再需要插件,通过Canvas更灵活的完成图像绘制,而不必考虑屏幕的分辨率,浏览器对可扩展矢量图和数学标记语言的本地支持,通过引入新的注释信息以增强对东亚文字呈现的支持,对富Web应用信息无障碍新特性的支持,等等。这些领域很多代表了未来Web应用发展的方向。
我们也希望能够看到,未来能够有更多像百度这样的国内互联网企业,不断参与到国际标准化工作中,未来我们使用的各种相关标准中,能够有中国人的声音与力量。
-----------
终上所述:
原生app会被取代但是不一定是html5。也有可能是html10
原生APP开发技术会逐渐被基于HTML5的Hybrid APP开发技术取代,这是个趋势,国外许多流行的APP其实都是Hybrid APP,国内的百度新闻、凤凰新闻等等APP也都是Hybrid APP。原因很简单:Hybrid APP开发成本低、兼容性好。祝愉快!
大量新生移动设备的兴起,改变了互联网的未来。在技术的发展上,HTML5会取代App应用吗?或者说能够在多大程度上取代呢?在HTML5规范中,已经加入了相机、磁力罗盘、GPS信息的支持。很多新兴浏览器也已经开始支持这些新特性。能否用一个统一的HTML5来替代android和ios并行开发的双重成本呢?以下译自Michael Mahemoff的一篇文章,详细分析了HTML5能否取代Android和iOS应用程序。介绍
移动应用程序(App)和HTML5都是目前最火的技术,二者之间也有不少重叠之处。在移动设备浏览器里运行的html5的web页面,也可以重新打包成不同平台上运行的app。目前很多浏览器都有很好的跨平台支持,(译注:firefox居然可以在android中使用和windows下同样的浏览器内核),HTML5的web方案,对开发者来说更为方便。完成一次,即可多平台使用。但这确实可行吗?仍然有许多必要原因,使得开发者选择了app开发。很明显,很多人已经在这么做了。本文将详细分析两种方案的优劣。
功能丰富
正方:App里可以开发出更丰富的功能
我们把移动功能分成两类。程序本身和程序与系统的结合。比如android里,加入widget图标或者通知提醒之类的。App对这两者都没问题。不用多说,这是肯定的。
反方:APP是挺强,但Web也正在迎头跟进
确实很多原生app实现的功能是HTML5望尘莫及的。不管你的web做的再牛,如果停留在一个没有摄像头支持的沙盒中,很多场合还是玩不转。幸运的是,现在没有这样的沙盒限制了。如果你需要你的web照相片,可以做一个负责照像的app,再把你的web打包进这个应用里面。开源的PhoneGap框架是这么干的。这样widget,手机提醒也都没问题了。
但这种混合开发的问题在于,增加了复杂性,而且不象传统web那样可以直接在浏览器里运行。这个问题短时间内恐怕没辙。好在现在网络标准在不断的高速扩充,先进的浏览器也在一直跟进。Android 3.1已经支持camera了。iOS浏览器也支持WebSocket和设备方向检测了。
总得来说,移动设备在发展,而web也同样在快速变化。桌面浏览器本身,有5家主要浏览器开发商在改进现有标准,丰富新的功能。所以原生App在快速前进,同时,web也在缩小差距。
运行效率
正方:原生APP速度更快
原生APP没有瓶颈,而且可以直接调用GPU加速、使用多线程。
反方:现如今Web已经快多了,而且多数应用也用不着那么快。
这说法有点落伍了。Chrome发布之时带来的Javascript V8,给Web速度带来的飞跃。而现在,计算速度变得更快了:
图片处理引擎已经使用web加速。现在硬件加速也已经开始应用了。看看用上硬件加速的canvas(图表来源)
要开发3D游戏的就不用抬杠了,但对于平而来说,新闻、邮件、时间管理、社交网络,这些用Web都够用了。试试Steve Souders的手机性能测试工具。 另外,越来越多的框架结合WebGL,可以发挥OpenGL的优势了。比如ImpactJS,帮助开发JS游戏。
开发感受
正方:原生APP好写
原生APP使用强壮的程序语言(Java, Objective C, C++)。适合写复杂程序,经过历史验证,API丰富。在桌面环境可以方便的用模拟器测试。而Web程序的runtimes和乱七八糟的各路浏览器让人头大。
反方:一般都是Web更简单,特别是需要兼容不同设备的时候。
Web最初的功能只限于文档展示,而不是程序应用,貌似最近俩星期才有了JS。但有了JS后,web的世界马上就不一样了。更何况web不只是静止的,HTML5,CSS3,EcmaScript Harmony(谁知道这是什么?)都给开发者极大帮助。你是喜欢C++,java, JavaScript,那你的个人爱好,也是基于你已经攒下的代码。但是现在没人能否认JavaScript也和前者站在同一擂台上。
浏览器/runtime的互不兼容(碎片),反过来看做APP也是一样。用Java写了Android app,然后又要面对iOS的Objective C。如果能写一个程序,马上能在Android和iOS上运行,多省事啊。这咱还没提WebOS, BlackBerry,Windows Mobile呢。当然,这是理论上的。要是想让程序在每个平台都跑得很漂亮,得做不少调试和妥协。这对很多原生APP也是一样的。不同OS版本,不同的设备。。。
所谓的Web碎片化,一直都是如此。但好消息是现在已经有很多不错的解决办法。Modernizr库,用得好的话,可以帮你兼容一大批主流设备,不管是啥系统,哪个牌子的。看看我们2011年的Google IO演示。
用户体验
正方:原生APP更切合原有平台
*** 作感受的定义之一,就是用户希望在你的程序里,用与系统连贯统一的方式来 *** 作。不同的平台,都有一些约定俗成的习惯。比如长按按钮会有啥反应。你不能指望用一套统一的HTML5 App去满足所有用户。
此外,整个平台的 *** 作感受都由用平台自有的软件库协调。直接调用平台工具包就能直接免费获得完整支持。
反方:我们Web有自己的传统,你要特想做原有平台那种感觉的web,也一样能做出来
前面说了,Web开发的方式,是先做一个大体适合所有平台的版本,然后再针对不同平台不断改进。当这些改进主要是针对功能时,你可以选择几个你最关心的平台做优化。类似于浏览器检测。技术论坛里的悲催技术员们,经常抱怨这事。太多不同的浏览器版本了。不过如果你优先关注两三种主流平台,是值得为他们多花点时间做做优化。
web本来就有自己的 *** 作感受。我们也可以说,不同的默认浏览器以及运行环境造就了独特的"Web感受"。从更广的角度看,这本身就是一种用户公认的方式。此外,还有很多成功的案例并不遵循移动设备的原生 *** 作习惯,人家也成功了。想想你最喜欢的手机游戏的界面?很多更传统的app也是一样,比如Twitter客户端。
传播途径
正方:原生应用更容易接触客户
象Google Play和Apple Store这样的app发布机制这几年势不可挡,推动了整个移动行业。每个程序员都能在市场里发布自己的应用。用户都挤在市场里浏览,搜索,接受推荐。不仅如此,只要你的程序够好,现有用户的打分会帮助你说服更多新的客户。
反方:其实web才容易接触到客户
通过web找到内容,这是经过论证的可靠途径。利用URL,每一项发布的内容都有一个独立的地址,包括在网站上发布的应用程序。搜索引擎帮助发现内容,其他网站提供链接,还有一些类似应用市场的分类网站。用户还可以邮件、短信、在社交网站分享你的链接。你的应用链接可以直接在不同设备上直接打开。
web上还没有一个统一的评分系统,但这个情况也在发生改变。往下看。。。
收费
正方:App收费:应天意,顺民生
“六岁孩子午饭时做app,$3一个,卖出几百万”。最近常听看到这样的新闻。各种大小厂商也跟着蜂拥而至,等着圈钱。应用商点帮开发商直接收费。最简单的办法,一次性收费。也有在app里再另行收费或者做订阅收费的,这帮助开发商赢得长期稳定的回报。
此外,传统网站的广告、赞助,在app里也同样适用。
反方:网站赚钱,从来都不是问题。现在机会还越来越多
Web能成为现在社会的推动力,有能力用多种方式取得回报,这是基本条件。虽然使用付费并不普遍。但SaaS的模式已经相当普及了。成功案例包括Google Apps,37Signals的系列产品,各类邮件的收费版。另外,直接收费并不是web应用的唯一模式。广告、会员链接,赞助,其他产品服务的交叉推广都是可选的模式。
看着能在应用市场里直接赚钱而眼红的Web开发商们,你们不能直接把你的URL发进市场,但是做一个浏览web的app的壳子来连到自己的web上怎么样?现在市场中如果不说数以千计,至少也有上百的app这么干了。有些包装的好的,你甚至察觉不到他是一个web程序。
以后应用市场会直接支持web程序吗?这个现在还不好说,但去年Google已经建了个Chrome web store。虽然还只能从桌面电脑放问,但这已经挑起了浏览器厂商的兴趣。现在还只是个初步概念,但看起来挺有前途。
结论
现在还看不出完胜的一方。有些应用适合做app,有一些适合用html5。目前的情况,原生APP肯定是一个很重要的选择。上面提到的混合式开发,可能是一个不错的妥协方案。能用web的时候用app调用web。web实现不了的功能用app开发。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)