网络应用软件之战
简单地说,仅管所谓的Windows思维一直以来相对静态,网络已经绽放成一个应用程序平台。就连微软也准备用Office 2010网络版加入这个舞台。老大上场,小弟靠边闪,在线版Office一定所向无敌吗?错。网络的效用愈来愈多,但它不是一个完美的应用软件基础。用网络应用软件重现一种PC原生软件的效用性和多样性,需要新的技术和专才。
第一, 基于安全和技术限制等因素,网络应用软件无法像原生操作系统一样利用硬件资源。想用网络软件操作镜头或烧录照片到DVD?祝你好运。
第二, 效能表现问题。网络软件的执行是透过如HTML(超文本标记语言)、CSS(串接样式表)和JavaScript等标准的结合。那些标准能执行较基本的程序,但难以应付需要密集运算的复杂软件,而使用者接口通常很简陋。
第三,网络联机仍是一个麻烦问题。没有网络的网络软件就像没有缝线的裁缝机。透过3G和其它开发中的技术,情况将日渐改善,但目前就算在许多高科技地区,还是没有完全可靠的网络联机。
第四,仅管网络开发者为数众多,只有极少数能取得制作复杂应用软件必须的技术。最明显的例子,就是应用软件在Chrome、Opera、Mozilla Firefox、苹果Safari和IE通常有不同的执行方式。程序设计工具将改善这种状况,但学习新的编写方法需要时间。
Google或许野心勃勃,但却不天真。该公司一直积极克服许多问题。例如困扰多年的普遍性网络存取问题,他们提供的Google Web Toolkit,即可减轻编写支持多种浏览器之JavaScript的繁杂程序。
而Google也直接改善浏览器。Chrome具有一个多重处理架构,当消耗较多内存时,会因效能和安全因素,自行隔离每个分页。Chrome还有V8 JavaScript引擎,加速JavaScript程序执行。最后,它有内建Gears,一种离线存取网络软件数据的技术。透过Gears,Gmail和Google Docs都有不同程度的离线支持。
接下来是进一步改善表现。Native Client技术能让程序设计师为网络软件加入一个直接在处理器执行的可下载模块,为相对缓慢的JavaScript程序增添力量。而O3D,配合Khronos Group与Mozilla的Canvas 3D计划,即可让网络应用软件利用硬件绘图加速器的优势。