技术开发 频道

谷歌Adobe推Web开发新利器 欲挑战微软

ITPUB 专稿】在微软的ASP.NET 和SilverLight逐渐成为互联网开发技术的主流同时,另外几家公司也都不甘寂寞的推出的了自己的Web开发利器,在这里我所指并非那些老牌劲旅如JSP或者PHP们,而是一些携网络新生势力而异军突起的新公司和新技术,比如Google的Gears以及Adobe的ColdFusion 8。

   严格说来这两家公司都是互联网开发技术的老牌公司,Adobe凭借收购Macromedia公司,使自己不但是一家平面设计工具公司,还是一家卓有成效的网络开发技术公司,其Flash技术和DreamWaver以及Firework工具都成为千千万万的互联网开发者喜闻乐见的设计和应用工具,而Google只凭借搜索引擎起家,现在已经成为了互联网先进技术的代表力量,其提供的新开发工具Google Gears又将要带来怎样的新变革呢?我们在本文将从这几个技术的底层讲起,对其来龙去脉进行深入的剖析。

Google Gears google网络OS野心的试探

   不久以前有一位伟大的计算机预测大师说,单机操作系统时代已经过去,网络OS时代即将到来,这种说法并非空穴来风,无论是各个公司已经推出的云计算解决方案,还是即将推出的网络应用解决平台,都无时无刻不在提醒着我们,似乎系统平台应用已经不再重要,而为用户提供随时随地的统一样式的应用则更重要,这种操作系统这个概念已经被浏览器代替了。

   在这种情况下,很多软件公司和技术都做过前仆后继的尝试,这里面的先行者应该算是一款名为Bindows的产品,这一产品的理念是把所有桌面应用都通过JavaScript来实现的。这一技术诞生于2004年,应该说在互联网应用还没有完全复苏的时候确实是一个创举,其中的网络访问部分实用了大量后来被称为Ajax的异步数据访问技术,实现了很多难得的特效。

   但是这一技术的超前带来了几个问题,首先,无法找到足够的网络服务提供装置,也就是说各种应用的API还在在本地实现,这个设计在性能上就大打折扣了,因为无论如何脚本语言的执行效率无法和编译语言相比,而且出于安全性考虑其所提供的服务内容也远不能和编译语言比较。为此,这个新的技术尝试无疾而终了。

   但是今天的情形与当日则完全不同。Google所提供的在线服务内容包含了当前主流应用的方方面面,随着互联网速度的提高,网络访问的接入价格也变得低廉,这使得各种基于网络的API应运而生,无论这些API的实质是调用那些服务,其调用方式都是固定的,常见的手法无非就是使用WebService这一技术,这样一来,新一代桌面终端模拟系统通过Ajax调用远程服务的方法就完全成为可能了。

   现在Google Gears就提供了这样的解决方案。按照官方文档的说法,这一产品包含3种应用,LocalServer、DataStore、WorkerPool这三种方式分别对应不同的应用。其中LocalServer模式把制定Url的数据保存到本地,一旦有访问远程数据的应用会首先调用用户的硬盘数据,这一技术的最好应用场景就是那些对数据实时性要求不是特高的应用,这些应用可以方便的通过这个LocalServer提高性能,比如google自己的google reader产品就使用了这个特性。

   Data Store则用于在用户本地记录数,这种轻量级的数据库类似以前实用xml记录数据的本地数据库模型,似乎现在基于xml的数据存储是流行趋势,所有应用都希望自己的数据是这样存储的,可以想到的原因是,这样的数据格式更容易被网络接受和调用。WorkerPool则实用了一种辅助浏览器性能提高的技术,类似那些在后台下载异步数据的自动更新应用程序一样,WorkerPool提供了一种在后台响应请求,并提供数据下载的策略。这一应用无疑带有很好的商业价值,为那些原本只是基于互联网应用的工具提高性能做了帮助。

   看完以上内容大家可能敏锐的发现了一点,google Gears没有提供任何UI层的东西,似乎界面和它无关,现实的情况确实如此,目前Google Gears还只是提供了一些后台机能,说到做UI似乎设计出身的Adobe公司更有心得一点。

 

Adobe能够转型为设计开发的两栖公司吗?

   如果和一个做网页设计的人说起Html,估计没有任何人会说不知道,但是如果说起CFML,就不知道有多少人知道了。后者是Macromedia公司曾经的网页设计利器DreamWaver中整合的一种网页设计和描述工具,这一工具从设计的角度把网页逻辑代码给包含了进去,把包括数据访问,表格绘制一类网页常用操作都用一种简单的方式抽象化了。按说从这个设计理念入手,这个产品应该早就普及到千家万户了,然后奇怪的是,似乎只有为数不多的几家公司有人使用这一产品,其中原因归结起来似乎有以下几个,第一就是服务器设计需要Adobe的单独支持,第二就是这个语言和现有语言跨度较大,所以大部分用户对其了解有限。

   不过Adobe确实是花了大力气打算推广这一产品,所以在最新版本的应用当中包含了以下几个组件ColdFusion服务器(ColdFusion Server),ColdFusion Server是ColdFusion的核心部分,它在NT中运行为一项服务,在WIN95中作为应用程序运行,其作用是等待Web服务器的请求。

   当客户(浏览器)向Web服务器请求文件时,发生如下过程:Web服务器根据文件名判断文件的类型,若是ColdFusion 文件(后缀名为CFM),Web服务器转而向ColdFusion Server请求该文件,ColdFusion Server对该文件进行处理后,产生一个标准的HTML文件,交付给Web服务器,Web服务器再将HTML文返回到客户端。

   ColdFusion管理器(ColdFusion administrator)系统管理员用ColdFusion管理器来配置ColdFusion服务器的各种选项,包括ColdFusion 数据源、调试信息、服务器设置、应用程序安全性、服务器集、执行预定网页、目录映射等。

   ColdFusion工作室(ColdFusion Studio)ColdFusion Studio是ColdFusion的开发环境。它提供了可视化的开发工具,包括动态预览,交互式的调试,查询生成器,表达式生成器,工程管理,以及一些控件工具和其他工具,用这些工具可以快速方便地产生ColdFusion应用程序文件,也可以产生标准的HTML文件。

ColdFusion Studio的功能主要包括:

   查看数据源、快速生成SQL语句、从标签选择器中使用HTML和CFML的所有标签、在特定标签的编辑器中或标签检查器中编辑代码、在内部浏览器或外部浏览器中显示网页,在设计窗口中可视地编辑网页、建立工程来管理应用程序文件,使文件易于维护和上载、使用扩展的查询和替换,快速更新一组文件、存储代码片段,以便重复使用、用表达式生成器生成包含ColdFusion函数,常量,变量,和运算符的表达式、调试程序代码、查看站点的整体结构、检查HTML代码和CFML代码的合法性、检验单个文件或整个工程的链接、启动文件的版本控件,以利于团队开发等。

   ColdFusion工作室(ColdFusion Studio)ColdFusion Studio是ColdFusion的开发环境。它提供了可视化的开发工具,包括动态预览,交互式的调试,查询生成器,表达式生成器,工程管理,以及一些控件工具和其他工具,用这些工具可以快速方便地产生ColdFusion应用程序文件,也可以产生标准的HTML文件。

   ColdFusion应用程序 ColdFusion应用程序由一组后缀名为CFM的文本文件构成,这些文件实现了该应用程序的功能,其中一个重要功能是接收客户输入和格式化输出的客户界面。CFM文件中可以包含ColdFusion标签,HTML标签,CFSript,JavaSript,以及任何可以嵌入HTML文件中的内容。

   可以看出,Adobe这次确实提供了丰富的内容,非常希望在开发方面有所斩获。

   纵观这三家的产品,微软作为老牌开发服务提供商,对新技术的把握似乎从标准的倡导者变成了新技术的追逐者。从SilverLight战略开始微软正在把自己的开发工具从应用层向表示层转换,希望通过这个转换提供更具有表现力的应用程序。而google则在技术方面试图在互联网平台上领先一步,把自己定义为互联网开发应用标准的先驱,Adobe在粉墨登场之后开始充实自己的内在技术,让自己从一个花瓶转变成为具有丰富内涵的公司。每个公司都在试图摆脱自己的固有形象,在自己的短板上奋起直追,并在即将开始的互联网应用程序开发上独领风骚。
 

0
相关文章