CSDN:HTML5是一种新技术,开发者可以开发出通过标准浏览器在任何设备上运行的Web应用。许多人认为HTML5将拯救Web,使与平台有关的原生应用遭到淘汰。你怎么看HTML5与原生应用之间的关系?哪个更有优势? 谭海燕:按照目前HTML5的现状来看,的确有很多地方特别是性能方面,单纯HTML5应用还是达不到Native的效果,但是 HTML5更具发展潜力,。可以看看目前市面上的新生OS,包括Firefox OS、Tizen等等,都是冲着HTML5来的,现在已经没有新的OS会 去跟IOS以及Android在Native应用上竞争了,都是奔着HTML5,因为对于Native应用生态圈,IOS和Android已经做得很好 了。 CSDN:HTML5要发展到很成熟,有人说至少还需要10年,那就目前来说,押注HTML5是否还为时过早呢? 谭海燕:HTML5的确现在很不成熟,还有很多地方不够完善。但是不可否认,任何一项新技术在成为主流之前,都必须经历一段潜伏和积累期。随着Google等的推动下,HTML5的发展还算比较快。完全押注HTML5应用在现在看来还是没有必要,毕竟不成熟,不够商业化标准。但是如果打造支持HTML5的平台,必须的趁早。有条件的大公司,最好是能够参与HTML5标准的制定。 CSDN:许多业内人士表示,HTML将会最终代替多媒体框架,如Adobe的Flash,对此你怎么看? 谭海燕:HTML5 最终替代Adobe的Flash完全有可能。就HTML5的发展现状和趋势来说,HTML5多媒体在逐渐标准化。可以看到,在移动设备上HTML5多媒体支持,从性能和流畅程度上将,很多浏览器例如chrome使用HTML5已经做得很好了。但是,对于短期来说,Adobe的Flash地位,还是不能被HTML5撼动。无论是从浏览器上来说,还是从技术上来说,都还达不到普及的程度。HTML5是新技术,但是还不成熟。还达不到商业化的要求。也不会有公司为不成熟的技术买单。 CSDN:几乎所有人都热衷于开发独立的移动应用,但是HTML5很可能会是独立移动应用的终结者。由于HTML5将应用的功能直接加入其内核,这很可能引导移动技术潮流重新回到浏览器时代。关于这个观点你什么看法? 谭海燕:这 一点其实不存在。不一定要浏览器啊,完全可以自己包装一个WebKit然后装载自己的应用。而且对于一个真正的HTML5支持平台来说,必须屏蔽浏览器这 个概念,应用的启动也不应该是从浏览器里面打开,开发者和用户应该感觉不到浏览器的存在,当我们点击一个Web App,就能像普通应用一样启动,而不是 要到浏览器里面打开。他也不需要关心自己的应用究竟是运行在浏览器里还是在Native上。Palm WebOS上,所有的系统内置应用都是 Web App,包括一些基础的打电话、短信和音乐应用等,都是使用HTML和JS编写的Web App.
CSDN:你的博客中有很多关于Google V8和Node.js的内容,Google V8和Node.js对于Web App有什么重大作用? 谭海燕:V8 JS引擎和Node.js,在PC端来说,现在已经发展的很不错了。V8打通js和C++,而且V8在内存管理,性能 以及多线程上有很大的优势。能打通JS和C++的,除了V8以外,还有Qt。Qt的QML(类似于JS)其初衷是为了快速开发,可以直接使用脚本语言写 UI,使用C++作为后端逻辑和数据Model,JS/C++混合调用。而Node.js则是擅长使用少量的JS编写服务程序。那么这些技术对于移动互联 网,对于Web App来说,恰恰是补其短板。这些技术使得语言的界限变得越来越模糊,JS/C++打通之后,使得Web App具有调用 Native API的能力。Native能做的,Web App也能做到。 CSDN:很多人将Cloud App或者Wew App和网页混为一谈,究竟什么是Web App? 谭海燕:经常会有人误解网页和Web App,很多人都觉得所谓的Web App就是通过某种技术将网页转换成应用的形式,在浏览器
里运行。那么究竟什么是Web App? Web App是使用HTML,JS等技术编写的应用,可以在浏览器里运行。只是恰好使用了跟网页编程相同的技
术而已。不能因为它使用了HTML和JS就认为Web App就是网页。 CSDN:就目前来说,移动互联网领域,Web布局绝大多数是依赖于WebKit,包括Google 的blink也是从WebKit fork出来的,那么Web应用的发展,对于WebKit来说有什么样的挑战呢? 谭海燕:Web App对WebKit的挑战一方面来自于Native API的支持。Web App,作为一个应用,应该具备 Native应用的能力,包括对硬件操作的API,这些都需要WebKit对其进行支持。这方面,W3C已经有了一些标准,但是还是需要WebKit在各 个平台上提供支持和实现。另一方面就是启动和加载速度。对于Native应用来说,UI都是已经布局好了。而对于Web App来说,都有一个布局和渲染 的过程。而且很多Web App都是不需要安装的,而是在线使用,这就需要有一个从服务器加载的过程。这对于WebKit来说,如何去缩短这些事件,而且 要比Native启动速度快,是一个很大的挑战。必须处理好数据请求与Cache的关系。 CSDN:网络应用开发工程师们在学习新技术的同时需要时刻记住网络安全。在这方面,你有什么经验可分享? 谭海燕:Web网络安全,更多的在于HTML引擎。目前安全机制做的最好的是Chrome的沙箱机制。所有的Web App都在独立的沙箱进程空间,有效的做到了应用进程以及资源访问的隔离。 CSDN:目前你在CSDN Linux/Unix程序开发版担任版主,你的收获是什么? 谭海燕:担任版主,主要的收获是技术上,每隔一段时间我都会去论坛里逛逛,关注一些技术贴,然后去弄明白,并给与回复。对于不能回复的,也可以看看别人是怎么解决这个问题,对于自己的研发工作也有帮助。 CSDN:你对CSDN有什么建议?对未来有什么期待? 谭海燕:希望CSDN的博客能做的更符合IT技术人的口味,毕竟CSDN是国内最大的技术分享的论坛力量,对于博客的风格要稳重。另外一点就是希望CSDN能对论坛每月排名靠前的同学给予奖励,这样可以激发大家回帖的积极性。 |