HTML5应用的现状

WebFX总裁。Bill在互联网营销行业有超过25年的经验,专门从事SEO, UX,信息架构,营销自动化等。William在希彭斯堡和麻省理工学院的科学计算和教育背景为MarketingCloudFX和WebFX的其他关键研发项目提供了基础。

HTML5应用的现状我们正处在改变我们做事方式的边缘。一直在这些新机器上辛勤工作的僧侣们正从巨石中走出来,开始向人们传播这个消息。您可能已经看过我关于创建HTML5 iPhone应用,强调了开放标准的可能性,客户端应用程序利用了我们传统上用于网站和web应用程序的技术。

最近,苹果公司宣布HTML5暴露(但没有)。受人尊敬的网页设计顾问和作者,Eric Meyer,已经开始谈论的概念Web栈我们现在的情况和Ajax刚开始的时候差不多:已经有一些人在做了,但是我们还没有完全公开,我们当然也不知道该怎么称呼我们正在做的事情。我自己的HTML5项目一直在提出自己的问题,我觉得我需要后退一步,设置一个阶段,这样我就可以确保我理解所有这些不同的部分。

让我们来谈谈术语

我们需要解决术语问题。此时,我们甚至可以使用一个很好的旧术语表,但现在让我们只定义基本内容。顺便说一下,这些也不是一成不变的。

我认为在这里会有一些流行语的争夺。

HTML5

HTML5是什么?Mark Pilgrim很好地总结了HTML5。

HTML5是下一代HTML,将取代HTML 4.01、XHTML 1.0和XHTML 1.1。”- - -深入HTML5 -介绍

这里一个有趣的边注是,我们可能会看到“HTML6”,但听起来他们只是想放弃数字的想法,相反,随着时间的推移慢慢发展规范。

这将需要大量的再教育,但这是有意义的。还有一个来自Pilgrim:

“HTML的下一个版本还没有名字。事实上,它可能从来没有名字,因为工作组正在切换到一个未版本化的开发模型。

规范的各个部分将处于不同程度的稳定性,如每个部分所述。但如果一切按计划进行,就永远不会有一个被冻结在时间里并被称为“HTML6”的大截断线。HTML是一条不间断的线可以追溯到近20年前,版本号是标准的旧开发模型的遗迹,它从来没有真正与现实很好地匹配过。HTML5已经过时了。

让我们谈谈接下来该怎么做。”- - -WHATWG博客

应用程序

虽然有很多好的定义(您可能知道什么是应用程序),但我认为有必要在这里重新讨论一下。

应用软件是设计用来帮助用户执行特定任务的计算机软件。这样的程序也被称为软件应用”——维基百科

HTML5应用程序(HTML5 App)

什么是HTML5应用程序?它们是符合上述定义的应用程序(从用户的角度来看)。它们现在可能还不能与其他应用程序相提并论,但它们已经足够接近,用户不会在意。

不久之后,我们也将看到能力对等。从开发人员的角度来看,它们是使用HTML、JS和CSS编写的应用程序。它们是利用开放技术和不断发展的HTML和CSS规范的应用程序,允许我们创建可以离线使用的软件;以前需要(至少)像Silverlight或Flash这样的平台的东西。

实际上,HTML5应用只是web标准的东西。我猜你也可以把图片放在那里,但实际上,你多年来用来构建网页的东西现在被用来构建更类似于桌面或智能手机应用程序而不是网站的应用程序。

开源模式的转变

Tim O 'Reilly, O 'Reilly Media的创始人和开源支持者,发现了一些东西:

IBM对个人电脑基本设计的商品化,给软件行业带来了诱人的利润机会。互联网基础的开源软件正在创造新的财富。”- - -开源模式的转变

价值上升,商品化下降。我认为HTML5是一个全新的层面。浏览器——甚至在这一点上——已经成为一种商品。

只要它坚持一个标准,我认为它会做得很好。比起他们使用的浏览器,人们更担心他们可以在自己的浏览器上运行哪些HTML5应用。人们很早就看到了这个,他们想,“哦,我们可以把我们的操作系统放到浏览器里了!”嗯,没有。

如果说我们学到了什么,那就是你不能从旧媒介复制粘贴到新媒介。想想从广播到电视。你不能把摄像头对准一个对着麦克风读新闻的人。

虽然最初出现了一些令人惊叹的因素,但我不认为完整的网络操作系统能够像HTML5应用那样完全转化为离线设备使用。

分销渠道的重要性

没有像苹果App Store和Android应用商店这样的分销渠道占据主导地位。还有一些新颖的用途,比如视频游戏开发和数字发行公司Valve在游戏发行方面的做法,以及Netflix在电影方面的做法。这些分销渠道似乎是用户自我组织的方式。

就像操作系统是桌面时代的绑定软件一样,分销渠道将是“云”时代的绑定软件。

我们是如何来到这里的?

过去是——现在仍然是——两大瓶颈。

谢谢Web标准

尽管我们抱怨浏览器市场的碎片化,但情况并没有那么糟糕。它可以变得更好,但这不是世界末日。它们都运行HTML、JS和CSS。

虽然每个浏览器都有自己的事情,但总的来说,我们做得还不错。例如,你总是可以把一些内容放在一个网页上,并把它交付给用户,并且知道——以某种方式——用户将能够看到它。你能想象如果一个公司开始认为他们将从下到上重新定义网络,并完全控制标准?

“我们不使用HTTP我们不打算使用HTML。”那太疯狂了!这一事实给了W3C这样的标准组织巨大的权力,让浏览器保持在相同的路径上。

没有很多布局引擎

第二部分是浏览器很难制作。数以十亿计的网页——很多都有非常糟糕的标记。个体开发者是没有机会的。

甚至不只是解析HTML: HTML运行得很快——对我们大多数人来说不算快——但对个人开发人员来说很快。此外,我们选择以新的方式使用HTML(如微格式),这样即使是惯例也可以在浏览器上中途改变。除此之外,浏览器供应商还必须跟上计算机和操作系统的多样化生态系统,这是一个小俱乐部的菜谱。

一个小俱乐部就是我们今天的样子。目前市场的核心布局引擎只有四种:Trident (IE)、Gecko (Mozilla、Firefox)、WebKit (Chrome、Safari)和Presto (Opera)。大量的浏览器都建立在这些引擎之上。

在这么小的俱乐部里,更容易保持步调一致,也更容易了解对方在做什么。尽管人们抱怨IE,但据我所知,如今每个人都在互相交谈IE9看起来将成为一个可靠的成员这个小俱乐部。所以我们在这里:标准和浏览器供应商创造了一个瓶颈,几乎任何你想在网络上做的事情都必须通过它们。

但是,这也意味着如果你的设备上有浏览器,你就有了HTML5应用环境。碎片化总是存在的,但这就是未来的发展趋势,我们暂时可以接受这一点。

我们在标准化方面处于什么位置?

有一个臭名昭著的估计伊恩Hixie, HTML5编辑器:

据编辑估计,HTML5将在2022年或更晚的时候达到W3C的推荐标准。”- - -whatwg.org wiki

这吓坏了很多人,但我认为这意味着最终确定标准需要很长时间。浏览器厂商可以免费现在就开始执行这些东西——事实也的确如此(除了ie浏览器之外,大多数人都是如此)。

特性检测与浏览器嗅探

这就是特性检测(检测用户的浏览器可以做什么)与浏览器嗅探(用户使用什么浏览器)之争的来源。如果您是应用程序开发人员,您可以自由地瞄准“高级功能”,但您应该进行特性检测和渐进增强。这似乎是一种完全合理的开发方式。

它允许标准流程确保它做正确的事情,同时不会阻碍开发人员满足用户的需求。在任何时候,都会有各种各样的浏览器出现。(使用像caniuse而且QuirksMode将帮助)。除此之外,还有一些很棒的特征检测库,比如现代化的

还有这张朝圣者马克的名单全合一的几乎按字母排列的无废话指南来检测一切

离线api

我真的认为,这些是HTML5应用运动的第一步,它们不仅仅是离线存储数据。但许多开发者却忽视了我们所拥有的一切localStorage,但我们如何允许应用程序完全离线启动呢?当然是应用程序缓存。

如果没有离线存储源文件和数据的能力,我们不会有离线HTML5应用。就像我说的,我们有一些离线存储机制:一个简单的键/值存储系统叫做localStorage还有一个SQL存储引擎,有一些浏览器支持(但是SQL的想法似乎已经过时了)。新的热点是建立索引数据库-它得到了所有主要浏览器供应商的支持。

离线存储应用程序和数据是任何HTML5应用程序环境的基本需求。值得庆幸的是,我们已经在WebKit浏览器Firefox中支持这些标准,它应该会在IE9中出现。尽管IE支持可能还不完全到位,但考虑一下离线使用:我们最需要离线功能的地方是哪里?当我们用手机或上网本时。智能手机更倾向于WebKit,现在销售的许多智能手机都运行WebKit。

因此,我们最需要离线体验的地方确实支持离线体验——而IE目前不支持离线存储也无关紧要。

W3C WebApps工作组:HTML5应用的下一步

W3CWebAppS标准是另一个主要的工作领域。围绕客户端HTML5应用程序的大量api和其他规范正在开发中。

用于分发的部署和打包

“对于本地/离线HTML5应用程序,W3C Widget打包和配置是选择的部署机制。它将成为标准,因为它已经存在了,它是有意义的,而且它即将成为正式的规范。此外,许多供应商已经在努力实现它。

W3C Widgets适用于沃达丰S60和三星手机、任何平台上的Opera桌面和移动设备、Bolt浏览器(像Opera Mini这样的瘦客户端解决方案),以及Windows Mobile 6.5.虽然黑莓也支持它们,但现在他们需要一个特殊的Java包装器作为黑莓操作系统的接口。没有理由认为W3C Widget的发展将止步于此。”- - -HTML5应用程序- QuirksBlog

这些都是标准,就像其他标准一样。

从本质上讲,如果你有一个HTML5应用程序,它将包含一些HTML, CSS和JS(可能还有图像和其他媒体)。该标准只是一种帮助开发者打包应用程序的方式,这样他们就可以在一个完整的包中一致地、互操作地分发。如果你熟悉的话,这是一个非常相似的概念(但对于HTML5离线应用程序而不是PHP类)。

你可能需要填写一些额外的元数据来解释你的应用程序是如何组合在一起的。然后,在一个支持标准的平台上,你可以确定用户将能够安装你的应用程序。当开始谈论“应用程序商店”时,这开始变得有趣,我们将稍微讨论这个话题。

还有其他的

HTML5还有许多其他很酷的api可供HTML5应用程序利用。这些api会让应用程序访问文件网络摄像头与服务器的双向通信以及硬件加速动画。这些api将会变得越来越好,但在谈到HTML5应用程序时,它们只是蛋糕上的糖霜。

HTML5应用可以在哪里使用?

我们有HTML5应用,它们可以离线运行,可以提供独特的体验,但它们能在哪里运行呢?嗯,在浏览器中。

HTML5应用可以存在于许多地方,但第一个问题是,“设备是否有浏览器或某种布局引擎?”如果有,并且引擎是现代的,你就可以在上面运行HTML5应用。但是,从本质上讲,我认为这可以分为三个主要的操作领域:桌面、移动/小屏幕和模糊。

台式电脑

如果您有一个现代的浏览器,您就可以开始了。如果你使用的是IE浏览器,你需要使用现代浏览器,比如谷歌Chrome或Mozilla Firefox,或者至少,铬框架.此外,桌面仍然非常重要。

如果你真的想惹恼一些人,那就开始谈论HTML5应用程序是如何像其他堆栈(例如Flash、Flex和Objective-C)一样瞄准桌面的——HTML5应用程序就在你身边,只需要一点帮助。

特定站点的浏览器

网站专用浏览器(单边带)选择一个网站或应用程序(如Gmail),然后把它变成一个应用程序。没有URL栏或其他干扰。有些ssb允许您构建一个自包含的可安装包并分发它。

这极大地打开了桌面应用程序领域。值得关注的东西:棱镜,流体/Fluidium和NativeHost。

移动

是的,这是热点HTML5应用。iPhone的集成非常好,你的应用程序可以和其他应用程序一起出现在主屏幕上我的教程教你怎么做).Android支持所需的HTML5 api,但并不是很好的集成。

在接下来的几年里,运行支持html5的浏览器的设备数量将会激增。除了设备的数量,你可能需要开发的不同类型的手机和手机操作系统也会增加。对于一部分应用开发者来说,将HTML5作为目标是很有意义的,因为它能够在所有这些设备上运行,你不需要担心所有潜在的不同技术。

模糊空间

我们已经有两家公司将推出电视平台:谷歌电视和(可能)苹果电视.谷歌在谷歌电视主题演讲中表示,他们将支持HTML5。我们不知道Apple TV将支持什么,但根据最近的它一直在宣传HTML5在美国,他们很可能也会支持它。即使他们不支持HTML5应用,其他电视盒厂商(如Boxee)已经支持了。你可以利用HTML5来制作Boxee应用,而不需要专门为Boxee开发一些东西。

模糊空间是目前最开放的领域,它们提供了很多游戏室。连接到电脑上的电视越来越多,还有可以在电视上观看YouTube的全屏浏览器。流行的视频游戏机Wii上有一个Opera版本。

这里没有限制。重要的是,在这些空间中“玩”只需要HTML、CSS和JS。

HTML5应用商店

Eric Meyer写了关于我们如何制作HTML5应用的文章;他叫他们Web堆栈应用程序(我们现在已经有一段时间了)但苹果应用商店的宠儿吸引了所有的注意力。一种想法是,HTML5应用程序要获得更多的报道,它们需要成为一个HTML5应用商店.我认为这个想法有一些优点,我认为有人正在路上,至少有一个。

正在计划,Palm也有一个。现在的任何一天,我们都会看到完全独立的应用商店HTML5应用的兴起。(也许我应该把这个想法留给自己。)商店很棒:开发者可以通过广告以外的方式获得报酬。

这在网络上一直很困难。其次,用户现在有了一个地方,无论他们拥有什么设备,他们都可以在那里找到应用程序。这是一个分销渠道,这就引出了我的总结。

你的钱该放在哪里

如果我是一名商业分析师,我会在这里给出我的买入/卖出建议。HTML5正在迅速发展。它将继续发展。

这是每个人都需要密切关注的事情。今年和未来几年,公司将开始大举进入这一领域。我们将看到Chrome App Store的一些大数据。

我也希望谷歌电视和Apple TV上也能有应用商店。一开始我认为HTML5是一个大统一的理论,是我的专业工作的顶峰,它将接管一切,但我意识到HTML5与Flash、Flex、Silverlight和Objective-C等应用程序的传统开发栈处于同一个生态系统中。它不仅是一个玩家,而且会很有竞争力。

Flash、Flex、Silverlight和Objective-C不能说它们无处不在。例如,Flash在一款非常流行的设备——iPhone上不受支持。另一方面,HTML5似乎正在向所有领域发展。

这意味着如果我是一家着眼于长远的公司,我将会投资HTML5。即使我现在不能在HTML5上创造出像在其他平台上一样强烈和身临其境的体验——Flash以前已经在电视和3D动画中使用过——我仍然会购买它的股票。我可以以最少的开发量接触到大量的用户,这对任何公司的资产负债表来说都很容易。我们总是会听到有人说:“是的,你可以这么做,但在X设备上不会有很棒的体验。”他们是对的,但这并不是每个人的目标,我不确定这是不是坏事。

对于现在的年轻开发者来说:HTML5是一项a级技能,需要开发到你的技能集中。它会有市场,会有需求;它可以出现在你想去的任何地方,所以公司需要有一些HTML5应用忍者在他们的口袋里。我建议买入HTML5应用。

买大了。立即购买

相关内容

WebFX职业

加入我们的使命,为全球各地的企业提供行业领先的数字营销服务-同时建立您的个人知识和个人成长。

我们招聘! 视图30 +职位空缺!