整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

HTML5还是原生应用开发:这场辩论终于结束了!

HTML5还是原生应用开发:这场辩论终于结束了!

错,这是一个被大家炒烂了的问题。如果,你去问身边做HTML5和原生应用程序开发的程序员,他们一定是各执一词。或许,很多市场分析师和战略专家会把这场争论再夸大一些,但其实这场辩论早就有了结果,是时候结束争执了!

2012年,Facebook的首席执行官马克·扎克伯格(Mark Zuckerberg)表示,对HTML5的赌注成为他最大的错误,这至少耽误了两年。从这之后,HTML5就渐渐处于边缘化的境地了。

曾经,在一场关于移动应用程序开发技术相关的大会上,有一个初期创业者问了这样一个问题:“作为初创企业,缺钱缺人缺资源,我们是否可以考虑采用HTML5的方式开发应用程序呢?”当时,在场的很多专家给出的意见是:“就算可能会慢点,也还是要选择原生。”

虽然HTML5在过去几年取得了良好的进展,很多应用程序开发者也将HTML5列为他们最常用的移动平台(可以理解,鉴于其通用能力)之一,但市场最终还是决定了原生移动应用程序开发的方式。

客户选择原生开发方式

研究表明,移动体验对用户是否购买有着巨大的影响。Oracle发现,超过一半(55%)的受访客户认为,较差的用户体验会大大降低用户数,对应用程序的未来有很大的影响。所以,很多客户宁愿花重金选择原生开发方式,HTML5或混合应用程序开发还有很多不足,让客户产生不满。

这里有一个真实的案例:一个叫Fly Delta的原生应用程序与与竞争对手的基于Web的应用程序的对比。Fly Delta的客户得益于用户友好的本机功能,以快速获取记录,提交行程修改等,HTML5应用程序显然不能提供本地应用程序众所周知的简单体验,最终导致失去竞争优势。

为什么本地应用程序脱颖而出?

HTML5应用程序的优点:·

  • 通过移动工具提供现有内容的简单选择。

  • 最简单的开发方式:建立一次,便可用于所有工具。

缺点:

  • 较差的用户体验:用户预计的移动应用程序有着,一个引人注目的用户界面; 受益于移动设备硬件的独特功能; 适时的消息推送。这些通常应该具备的信息和功能却在手机web上受到了极大的限制。

  • 较差的性能:长时间的负载和无法在离线或低带宽模式下运行的功能。

HTML5或混合移动应用

优点:

  • 使用HTML5或类似技术构建的移动应用可以提供消费者手机上的“区域”,可用于弥补本机应用程序和移动网站之间的一些差距。

  • HTML5或混合应用程序是具有互联网开发功能的团队吸引人的途径之一,并希望构建移动应用程序以获得额外的参与。

缺点:

  • 一个混合应用程序基本上是一个包含“Web功能”的移动网站,但上述所有UX /整体性能问题仍然存在。由于这些应用需要一个恒定的网络连接,它们限制了部分功能,导致用户无法在低/无带宽区域中使用它们。

  • 这些应用程序与每个工具以完全相同的方式构建;,没有客户在移动体验中期待的独特功能。

本地移动应用开发

自定义的原生应用程序提供了极好的消费享受,功能最强大。

优点:

  • 干净的UI。

  • 尖端的设备和人才。

  • 与Web应用程序相比,更快的加载速度。

  • 在线或离线的卓越表现。

  • 更高的可发现性

  • 与HTML5相比,安全性更高。

缺点:

每个移动平台都需要一番改进并且价格昂贵!

苹果今年发邮件致开发者“禁止热更新”事件,其实也表明了苹果的态度,在移动开发领域,苹果显然也更支持原生开发。长远来看,原生开发才是企业的正确选择!但近几年,阿里推出的Weex渐渐显山露水,这个动态化框架似乎显示出了巨大的潜力,未来移动开发这片天下会不会属于Weex呢?

近总有人在问到底是HTML5好,还是原生开发应用好,这个要一分为二的看待,主要看你的应用场景,适合你的就是最好的,下面我们比较了五个参数列表,让你清晰的了解何时用HTML5何时用原生开发。

自从去年10月HTML5规范尘埃落定以来,HTML5立马就受到了很多人推崇,也就从那时候起,许多开发人员都采用HTML5来构建自已网站和开发移动应用程序,那是否意味着HTML5将完全取代本地应用开发呢?答案是否定的。

尽管HTML5被日益普及和接受, 但很多人还在关心到底选择HTML5 Web应用程序还是本地平台应用程序?与大多数技术问题的回答一样,诚实的答案是“一切要视情况而定。”接下来我们将二者的五个参数列表比较一下。当你在考虑移动信息化项目的时候,HTML5和本地平台应用程序之间哪个更适合你?

一年前有个非常现实的问题摆在我们面前:Web浏览器该怎样去兼容HTML5。虽然个别浏览器对实现HTML5的特定技术仍有问题,但主流浏览器都对HTML5结构和功能给予了支持。

但这并不是说HTML5就没有问题,本地应用也有问题。这里有支持每种技术的五个论点,首先是HTML5,然后是本地应用。

HTML5——一次编写,随处运行

在HTML5中,开发人员编写一套代码能够在每个平台的Web浏览器上运行。而不是对于每个移动设备都需要写不同的代码,程序员可以让Web浏览器处理特定设备的功能。

在现实中,大多数开发人员都会写一些自适应代码来解决不同终端上的执行问题。但是大部分程序在任何终端都可执行。一旦时间紧迫、钱财流失的开发工作进行时,这并不是一件小事。

HTML5——可以赢得一个时代

找到一个HTML技能的开发人员不是特别难。毕竟HTML5是拿来教小学生的。但在另一方面,它也是一个挑战,如何找到合适的人来填补本地应用开发团队。当HTML5开发占据主导时,你就拥有了可以开始构建你的移动应用程序的技能了。

的确, HTML5不同于HTML4。HTML5中有很多结构和标记在HTML4中都不存在,但几乎所有在HTML4中的东西在HTML5上都支持,并且学习起来相对简单。不像Web开发人员那样需要学习本地应用程序的编程语言。

HTML5——时间就是金钱

总的来说,HTML5可以快速发展,不同页面可以分配给不同的开发人员。并且代码可以被编写、测试,并在短时间内修正。

正所谓“时间就是金钱”,80年前是真言,现在也是真言。当你可以迅速开发代码时,您就可以开发代码经济。这在任何人的网页上都是一个胜利。

HTML5——构建传统Web和移动应用程序之间的桥梁

四年前若想将传统Web迁移到移动端,不仅要突破HTML4所有的性能和功能上的限制,还要接受本地应用编程所带来的成本和复杂性问题。因为没有一种技术可以将两个牵线搭桥并将二者的优势结合,直到出现了HTML5。

使用HTML5,您可以构建一个看起来像是本地应用的应用程序。它可以是在用户手机屏幕上的一个图标,而不是通过浏览器访问的页面。把它看作是一个整齐地包装在一个HTML5包中并放置在用户设备里的完整网站。在一个HTML5包里有很多的功能和实际的价值。

HTML5——不需要应用程序商店

我们都经历过苹果应用程序商店审核的困扰,这对用户的体验造成了极大的伤害。

但HTML5不一样他是一种浏览器语言,所以它不需要通过应用程序商店审核。在公司的网站上也可以包含一个下载链接,并提供你想要的安装程序,而不是一个App Store强加给你的东西。一个新的App在开发结束的几分钟内就可以被下载和使用。快速部署意味着超酷的用户的体验。总而言之,速度致胜。

本地应用——用户体验的把控

任何做过Web开发的人都知道,每个浏览器呈现页面的方式都稍有不同。再加上浏览器厂商对于HTML5的支持力度又稍有不同。最终的结果是您只能控制Web应用程序部分用户界面,但并不是全部。而这是恰恰是本地应用程序的优势,就是带来极致的用户体验。

本地应用——敏捷的应用

在手机上的操作等待是有限的,一般不会超过2秒左右。当我们要求的性能占主要地位的时候,本地应用程序总会比一个Web应用程序要快。

为什么说本地应用更快?都是层的原因。Web应用程序有一层Web浏览器需要通过,每一层都会添加一个“慢”的过程。去掉“层”,你将会更快。快了,就会收获用户的认可。

本地应用——增强安全性

我们很难绕过一个基本的事实:HTML5仍然是HTML。这意味着它会受到很多同样困扰HTML4的安全漏洞,包括最重要的一个原因:程序员的错误。

但也不是说每一个本地应用都无懈可击。本地应用有HTML5应用程序没有的优势。并且每一个本地应用都是独一无二的,如果想要确保应用程序足够安全?那需要去构建并将敏感数据封装起来确保不与任何人分享,这就是你想要的安全的应用程序了。

本地应用——不需要网络连接,可以离线存储

Web应用程序都有一个特定的特征:他们往往需要连接到Web服务器。如果他们正在运行的系统没有连接到互联网,那这就会出大问题。对于本地应用,你可以选择将数据存储在移动设备上,通过数据处理显示结果,然后与云系统或数据中心服务器在恢复上网时共享数据。人们很容易忘记,地球上还有很多地方(甚至在美国有些地方)都是没有网络连接的,本地应用在离线时有它自己的优势。

本地应用——更好的用户体验

无论设计师怎么玩,Web应用程序无论是看起来还是用起来都像是一个Web应用程序。虽然每个移动用户都很熟悉那个外观和感觉,但这并不意味着他们必须喜欢它。

最近就有调查表明, 比起Web应用程序的体验用户更喜欢App的体验。如果你想留住你的用户,就给他们想要的体验。在许多情况下,这就意味着要给他们一个本地应用程序。

说实话,还有一个选项,我们并没有讨论过:就是“混合”应用。混合应用程序是本地应用与HTML5的融合,反之亦然。理想情况下,它带来的质量是最好的。有分析人士认为,混合应用程序将最终超过HTML5和本地平台应用。问题是一个纯粹的方式还是混合的方式更适合你和你的应用程序项目。

现在你明白了吧:5个参数支持HTML5,五个参数支持本地应用。作为一名开发人员,哪一个更引人注目?作为一个用户,哪一个更会让你满意?

5是06年出现的术语,易用性已经体现, 2014年10月29日,万维网联盟宣布,经过接近8年的艰苦努力,该标准规范终于制定完成。

H5随着智能手机移动端的普及越来越吃香

这里还是要推荐下我自己建的前端学习群:655962461,如果你正在学习前端,小编欢迎你加入,大家都是前端党,不定期分享干货(只有web前端相关的),包括我自己整理的一份2017最新的前端资料和零基础入门教程,欢迎初学和进阶中的小伙伴。

html5算是一种代码规范,html是专门用来写网页框架结构的,html5就是最新的规范,他有自己的标签自己的语法,让图片画面形成可以嵌套程序的一个个结构组合在一起的页面。

原生应用和 HTML5 之间到底谁更牛的争论可以说一直就没有断过。在原生应用风光时,HTML5 被看着是一个陷阱;而在 HTML5 风光时,原生应用又会被认为是“已经死了”。随着前两天微信公众平台开放微信内网页开发工具包,HTML5 眼看着又要迎来新一波的风光期,那么它和原生应用之间真的就是一个你死我活的关系么?

在以前,虽然 HTML5 经历过快速发展期,但原生应用在移动设备上可以说是一直占据着主导地位,这一点和目前 PC 端的状态并不一致;而随着原生应用数量的不断增加、智能手机增长红利的消失,这些现实环境会让那些新诞生的低频次需求 app 永远无法获得可观的增长曲线和活跃度。这个时候开发者就不得不根据用户的需求频率和使用场景来调整产品形式,进而原生应用和 HTML5 产品在手机端的关系也就有望回归到一个和 PC 上类似的相对稳定状态。

虽然有各种各样的因素掺杂其中,但从大环境来看的话,在手机上原生应用和 Web 服务的关系同样是先经历原生应用间的竞争,接着 Web 服务找到超级 app 这样的载体得以进化,解决某些状态下的低频需求。整体路径和 PC 端其实很相似,只是这类 Web 服务的载体并没有像在电脑端那样主要发生在浏览器中就是了。所以,谁取代谁从来都不是问题真正之所在。

对于目前流行的混合开发,甚至纯 HTML5 开发替代原生开发,唐老师怎么看?未来市场上对于 iOS 开发者的需求会不会大大减少?

目前各大应用里面,纯 HTML5 开发整个界面的基本没有,大部分都是说,基本是原生界面,部分内容用 H5 的方式来展现,这个才是主流。

未来会是朝哪个方向发展呢?答案肯定还是朝原生的方向发展,因为现在用户对手机的交互越来越挑剔了,而 H5 的方式你很难做到非常流畅。即使是当前流行的混合开发技术,像 facebook 出现的 react native,它用 H5 写代码,但渲染出来的是原生界面,所以大家都是在追求流畅的交互和体验,如果将这个作为目标的话,作为iOS开发者以及原生系统的开发者,应该是需求越来越多的,纯 H5 开发的项目基本上已经没有了。

当然,我还是希望各位 iOS 开发者能够多接触一些 H5 的知识,在工作中多多少少还是会涉及一些混合开发的界面,如果你懂这些知识,会很大程度上帮助你。