是HTML5还是App,这个问题网上的争论已经多如麻了,今天捡两个知乎上移动互联网从业者的回答。
仅是争论未来的趋势是没有意义的,其实只要能分辨得出各自优劣,能让看客们心里清楚,之后的发展就看趋势吧。
HTML5和Native是大家常谈的话题啦,个人认为HTML5以及相关技术/协议在众多人努力下越来越完善,但要让HTML5完全匹敌原生代码不太实际。不过这两者不应该是谁来干掉谁的关系,就目前来言在移动客户端已经有了较为清晰的用途划分:Native Code比较适合密集工作和硬件交互,而HTML5相关技术比较适合复杂排版和一些flexible的东西。比如要实现较复杂的rich text的话我相信大家都会毫不犹豫地选择HTML5相关技术,而且据我所知苹果在SDK内的很多控件中也是使用了相关的web技术。
HTML5和Native Code缺一不可,所以以后更重要的是让HTML5和Native Code更好地交互、配合,共同实现一个完整的牛X产品。什么技术不都是为产品服务的么!移动互联网的未来是属于好产品的...
另外广告下=___= 猛犸浏览器从5.0.0开始提供web与native代码的交互api,比如统一消息机制、web/native之间可以直接同步/异步调用(node.js风格哟)、数学/数据/代码处理和存储等等,提供比PhoneGap更底层更直接的支持。这套东西完善后会提供给其他开发者使用,现在就可以在Mammoth 5的插件开发中使用。(最近忙别的呢,遥遥无期啊...) 最终最终最终的目标是图灵完全(遥遥遥遥遥遥无期啊)...
看了一圈回答,没有人去区分问题中的HTML5和浏览器啊。
HTML5和浏览器完全是不同的概念,我们先来想想它们是不是等同的:
好,现在我们把浏览器去掉,只讨论H5和Native App。
讨论的是未来,通过目前前沿的H5进展,我们可以预知:
好,看起来,除了安全问题之外,似乎H5还是看上去很美的,但是它目前的最大障碍是:
移动操作系统分裂,系统浏览器(或系统提供的内置浏览器)标准不统一。有移动端H5开发经验的同学一定知道,兼容各个平台(Safari、Android系统浏览器、WP浏览器、各种淘气的第三方浏览器),每个平台的每个版本还都不一样,兼容成本是非常高的,手上拿十几个设备,天天默默流着泪入睡,哈哈。
随着技术成熟,标准完善,这个障碍会消失的。至于第三方浏览器的市场,敏感话题,略过不表。
其实说了这么多,只证明了H5还是比Native App差那么一点,H5的核心竞争力在于跨平台(什么云端升级都是小优点啦),设想有一个系统统一了天下,那么H5的跨平台优势就荡然无存了。“一次开发,到处运行”,只能“看上去很美”。
但是没有有一个系统能一统天下。
所以,结论是:HTML5和Native将会并存、融合。但H5的主要载体不是浏览器。
而我对此的观点就是,短时间内无法看到HTML5的未来,毕竟没有亲爹(iOS、Android亲爹是苹果和Google),无法让用户感到方便的工具功能再强大也是空谈。况且市面上弄个普通WAP页面打着HTML5的旗号到处招摇撞骗,吃懂了人们都是只识概念这一人性弱点。