HTML 5适合小公司,适合在大平台上做内容

Web App,现在有时候也称为轻应用,不仅是通过浏览器就能打开的应用。现在随着 HTML 5 在手机端的优越性,已经慢慢称为了 Web App 的主流。Web App 除了出现在 PC 的浏览器中,还大量出现在手机浏览器中或一些平台级应用中,例如微信中大量的交互内容,都属于 Web App 的范畴。
HTML 5取代的只是之前的HTML和Flash
HTML5 是一种彻彻底底的 Web 技术,包括最新的网页端的脚本语言 HTML5 语言、Javascript 2.0 和 CSS 3.0 这三部分。HTML5 的主要目标是取代原有的脚本语言 HTML,提供更好的交互效果和更丰富的 API,以及更高的运行效率。
HTML5 取代的是很多很多年前产生的 HTML 版本。熟悉互联网的人肯定清楚,互联网可谓日新月异,但是支撑整个互联网的语言 HTML,在 HTML5 以前却变化不大,这个严重阻碍了互联网本身的发展,这才是产生 HTML5 的一个根本原因。还有以前也常见 Flash 的应用场景,会被 HTML5 取代。
现在对 HTML5 的指责,主要是针对 HTML5 的性能,也就是常说的“用户体验”这一方面,由于 HTML5 是脚本语言,再加上 Javascript 2.0 实际上还是单线程运行的,运行的效率上客观地讲,确实比不上 Native App。但是,如果用 HTML5 做前端的轻应用,哪怕是在手机上实现,性能已经足够了,这也是为什么越来越多基于 HTML5 的轻应用出现的手机端的原因。另外,随着浏览器对 HTML5 的支持越来越好,手机 CPU 速度越来越快,以及各种引擎对 HTML5 的优化,用户体验会越来越好。
因此,很多人主观的把整个 Native App 行业和 HTML5 对立起来,这本身就是有问题的。 另外,反观 Native App,开放应用数量庞大,小团队众多(赚钱的很少),同质化严重,模仿门槛低,刷榜问题严重,都困扰了 Native App 的发展。
HTML5的新一轮高速增长:微信
下图是今年下半年的 HTML5 搜索指数,有一个明显的提升。除了基于 HTML 5 开发的 Web 本身,随着微信的发展,大量的基于 HTML5 的内容找到了出口,内容数量疯狂增长中!而现在对 HTML5 的需求还远远没有得到释放,相信很快很多其它的平台也会支持 HTML5 的内容,让我们拭目以待!

在社会化媒体和自媒体的大环境下,客户把更大精力放在实用的微信轻应用上,而越来越少直接花钱购买 Native App,道理很简单,如果采用 Native App 的方式,我要传播到 1000 人,并让他们下载安装是个非常难的事儿,但是如果做成轻应用往朋友圈里一传,可能 1 万人都很轻易达到。
HTML5 慢慢演变为一个刚性需求,在需求旺盛的带动下,前端程序员 /HTML5 工程师的工资水平原来越高,而且好的还非常难求。另一方面,Android 和 iOS 开发工程师,市场需求已经明显放缓。
更有大量的 HTML5 的公司顺势而生,做大量的 Web App 应用。产生 HTML5 内容的成本也越来越低,伴随这技术的发展,包括国内外都有大量的可视化工具可以快速生成基于 HTML5 的 Web App 应用。
对于 HTML5 被 Facebook 弃用这件事,除了记住扎克伯格的懊悔之外,我们不能忽略的是还有一篇报道,如下图所示。

这篇报道说明了什么?并不是 Facebook 本身不用 HTML5 了,而是 Facebook 这个 Native App 不直接采用 HTML5 的方式开发。这两者的区别可就太大了,这也引出我的下一个问题。
HTML 5适合小公司,适合做内容
我是 HTML5 的坚定支持者,但是我至少现在还不认为 HTML5 可以做所有东西,至少一些太过复杂的重度游戏、一些大型的门户(包括上面说的 Facebook)、一些涉及高运算或复杂算法的应用,我个人认为至少现阶段还不适应用 HTML5 去开发。
所以...HTML5 和 Native App 会走向融合 !
HTML5 Web App 和 Native App 各有优势,互为补充,能不能不把技术直接对立起来,而是用技术的进步来解决技术还存在的问题,使二者从对立走向融合。而且我个人觉得结合的场景最好在大型 的 Native App 平台,并且这些平台是可以 UGC 或 PGC 产生内容的。
我们以微信为例,微信这个应用本身就是一个 Native App,但是在这个巨大的平台里面,又可以容纳海量的 HTML5 Web App,这样的轻应用,充分发挥 Native App 的运行效率,同时又以海量的 Web App 来扩充其内容,给用户带来更丰富的体验和更优质的交互内容,这样不是很好吗?
现在来看一下如果基于 HTML5 的 Web App 和 Native App 融合,形成一种 Hybrid App,会给我们带来什么好处吧:

同时还解决了,海量的 Native App 利用效率不高的问题,通过 Hybrid App 内部的 Web App 来动态提供交互内容,而不是安装按量的 Native App 应用。
另外,由于服务的统一性,降低了需要学习每个 Native App 的用户时间成本。
Hybrid App 的优势显而易见,成本低、跨平台、不用下载 - 安装 - 更新、动态数据、维护容易,而且有现成的内容出口。而且我们这里的 Hybrid App 主要是指在大型平台化应用(Native Platform App)结构之下的 Hybrid App,可以理解为 1 个 Native App 对应 N 个 Web App 的结构,或是一个母 Native App 和 N 个子 Web App 的结构,而不是简单的把 Web 开发和 Native App 开发做一个结合。
在技术上,Hybrid App 的架构好处也显而易见,例如,HTML5 不能自动播放语音或视频,但是微信可以。同时,微信也开放各种接口给内部的 Web App 调用,这样就扩展了原生的 HTML5 Web App 的功能,且更好的提供服务,开发上也非常简单。
HTML 5适合小公司,适合在大平台上做内容的更多相关文章
- 从 Hadoop 到云原生, 大数据平台如何做存算分离
Hadoop 的诞生改变了企业对数据的存储.处理和分析的过程,加速了大数据的发展,受到广泛的应用,给整个行业带来了变革意义的改变:随着云计算时代的到来, 存算分离的架构受到青睐,企业开开始对 Hado ...
- 微信事业群WXG成立 致力于打造微信大平台
今天,微信之父张小龙带领微信团队成立微信事业群(WeiXin Group,简称WXG),致力于打造微信大平台,由他们负责微信基础平台.微信开放平台.微信支付拓展.O2O等微信延伸业务的发展,并包括邮箱 ...
- 了不起的 Deno:带你极速获取各大平台今日热榜
摘要:Deno 是一个 JavaScript/TypeScript 的运行时,默认使用安全环境执行代码,有着卓越的开发体验. 有人的地方就有江湖,有江湖的地方就有争论.前些天,继<[译]为什么如 ...
- Git各大平台(win/Linux/Mac)图形化界面客户端大汇总
摘要: 介绍各平台下的图形化界面git客户端(本人并没有全部使用过),欢迎大家补充新的软件或者使用感受~ 一.TortoiseGit - The coolest Interface to Git V ...
- JVM 平台上的各种语言的开发指南
JVM 平台上的各种语言的开发指南 为什么我们需要如此多的JVM语言? 在2013年你可以有50中JVM语言的选择来用于你的下一个项目.尽管你可以说出一大打的名字,你会准备为你的下一个项目选择一种新的 ...
- 随笔之Android平台上的进程调度探讨
http://blog.csdn.net/innost/article/details/6940136 随笔之Android平台上的进程调度探讨 一由来 最近在翻阅MediaProvider的时候,突 ...
- windows平台是上的sublime编辑远程linux平台上的文件
sublime是个跨平台的强大的代码编辑工具,不多说. 想使用sublime完毕linux平台下django网站的代码编辑工作以提高效率(原来使用linux下的vim效率较低,适合编辑一些小脚本). ...
- 龙芯GO!龙芯平台上构建Go语言环境指南
龙芯软件生态系列——龙芯GO!龙芯平台上构建Go语言环境指南2016-07-05 龙芯中科1初识Go语言Go语言是Google公司于2009年正式推出的一款开源的编程语言,是由Robert Gries ...
- Go语言在国产CPU平台上应用前景的探索与思考
http://www.chinaaet.com/article/3000087559 0 引言 CPU是电子产品的核心,代表着信息产业的发展水平.CPU发展至今已经有四十多年的历史了,实际就是Inte ...
随机推荐
- lumen使用CORS解决跨域问题
因为公司的业务是前后端分离,web前端和后端接口域名不同,所以存在跨域问题,开始使用的是jsonp解决,但是因为接口风格是rest的,还有delete.put等请求,jsonp就不够用了(涉及HTTP ...
- Leetcode153. Find Minimum in Rotated Sorted Array寻找旋转排序数组中最小值
假设按照升序排序的数组在预先未知的某个点上进行了旋转. ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] ). 请找出其中最小的元素. 你可以假设数组中不存在重 ...
- 【python之路40】Python 作用域
python的作用域与javaScript是一样的,参考:http://www.cnblogs.com/sunshuhai/p/9112578.html 一.python是以函数作为作用域的 if 1 ...
- LUOGU P4095 [HEOI2013]Eden 的新背包问题
题目描述 " 寄 没 有 地 址 的 信 ,这 样 的 情 绪 有 种 距 离 ,你 放 着 谁 的 歌 曲 ,是 怎 样 的 心 情 . 能 不 能 说 给 我 听 ." 失忆的 ...
- 详解PPP模式下的产业投资基金运作【基金管理】
详解PPP模式下的产业投资基金运作[基金管理] 点击标题下「搏实资本」可快速关注 搏实资本 研究型的投资机构,实操型的专家团队 ﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌ 一.产业投资基金概述 ...
- mybatis深入理解(四)-----MyBatis的架构设计以及实例分析
MyBatis是目前非常流行的ORM框架,它的功能很强大,然而其实现却比较简单.优雅.本文主要讲述MyBatis的架构设计思路,并且讨论MyBatis的几个核心部件,然后结合一个select查询实例, ...
- fiddler替换服务器上文件进行本地调试
在我们前端开发的日常工作中,发现服务器上某个css/javascript文件有问题,需要修改,那真是家常便饭.通常,我们需要将文件进行修改,然后重新发布再验证,这样就很容易影响到生产环境的稳定性.更普 ...
- windows--"git安装" 及 "使用git上传项目到github" 详细步骤
一.下载安装包 https://git-for-windows.github.io/(放在任何一个你想放的地方(系统盘或非系统盘)). 二.开始安装 很简单,双击安装包,一直next下去,到了安装的最 ...
- 删除 BIRT Report Viewer
去掉首页上的标题BIRT Report Viewer方法:找到Webroot\webcontent\birt\pages\layout\FramesetFragment.jsp文件,在里面定义了标题, ...
- Hdu 4920矩阵乘法(内存访问的讲究)
题目链接 Matrix multiplication Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K ( ...