开发下一代Web应用程序的五个步骤

2007-10-31 00:41:48  来源:计世网 胡杨

WebjxCom提示:随着网络的诞生及其重要性在90年代的提高,网络迅速改变了世界连接、沟通和获取知识的方式。网络在对社会的各个方面产生重要的影响的同时对企业也产生了重大影响。 然而,正当企业终于适应了Web 2.0技术的时候,Web又开始向前发展了。下一代Web应用程序是以动态、互动

  随着网络的诞生及其重要性在90年代的提高,网络迅速改变了世界连接、沟通和获取知识的方式。网络在对社会的各个方面产生重要的影响的同时对企业也产生了重大影响。

  然而,正当企业终于适应了Web 2.0技术的时候,Web又开始向前发展了。下一代Web应用程序是以动态、互动、开放和高度灵活为特征的,不仅超越了经典的Web应用程序的功能,而且还超过了桌面应用程序的功能。

  简言之,下一代Web应用程序将使我们更接近于把未来的Web当作一个钱柜娱乐。现在是企业为Web技术最新的变化做准备的时候了。

  在本期IT Planner(IT规划者)栏目中,eWEEK网站研究了这些高级的Web技术的五个关键属性,为企业提供一些准备应付这些变化的方法,以及开始建立和开发创新的Web应用程序的一些方法。

  第一步:建立丰富的Web应用程序

  当说到一个Web应用程序或者互联网应用程序"功能丰富"的时候,这一般是指这个应用程序具有高度的互动性,有同桌面软件一样好甚至更好的容易操作的用户界面,有丰富的功能和能力。

  在网络上,一个丰富的应用程序接口将包括在用户希望的地方有拖放功能,上下文下拉式菜单和鼠标右键菜单,在图片和报告等方面有互动和实时数据应答功能。对于丰富的Web接口,一个需要理解的重要事情是这种接口不需要许多flash动画和标识。

  这个领域的一个主要技术是AJAX(异步JavaScript和XML)。这是一种基于标准的语言,能够编写功能丰富的基于浏览器的接口,让这些接口在任何标准的网络浏览器上都能同样地工作。

  其它可以考虑的产品包括Adobe公司的Flex软件和微软的Windows Presentation Foundation软件。这两个产品都用于开发能够在浏览器以外运行的功能丰富的Web应用程序。

  第二步:保持"开放的"思想

  在过去的10年里,最有魅力的技术革命之一就是Web服务和SOA(面向服务的架构)。如果你要证据,你可以回想一下在90年代末XML和Web服务出现之前的应用程序状态和数据整合情况。

  在短短的几年里,Web服务解决了以前应用程序和系统整合遇到的难题。现在,每一个现代的企业应用程序、数据库和框架都使用基于标准的技术,很容易完成复杂和强大的数据整合以及应用程序整合。

  这一切是如何发生的?用一个词来解释就是"开放性"。SOA领域从一开始就规定如果一个企业、开发商或者软件厂商要发挥作用,它必须要以开放的标准为基础。甚至过去一直采取专有软件路线的厂商也支持SOA中的标准。他们明显地知道,如果不能与这个标准结合在一起,他们就只能在一旁观看。

  在下一代Web应用程序中,这种坚持开放的原则将更加重要。网站和应用程序只能在一种网络浏览器和一个钱柜娱乐上运行的日子已经一去不复返了。

  我们建议企业在可能的地方和可能的时候都选择开放的和基于标准途径。坚持开放标准和系统能够保证一个应用程序能够发展和适应新出现的趋势。

  第三步:保持数据处于动态之中

  在老式的应用程序中,对待数据的方式就像水龙头对待水一样:一旦数据到达应用程序,这个应用程序只能访问这个数据,而不能更多地控制这个数据。

  相比之下,下一代Web应用程序能够越来越多地在传输中处理数据,让用户与数据实时互动,而不用不停地重载web应用程序以便得到新的数据。

  下一代Web应用程序使用JSON(JavaScript对象标记)技术让用户更多地控制传输到他们的应用程序的数据。下一代Web应用程序还能提供更强大的容错水平,让数据能够留在客户机系统中。这与传统的客户机/服务器式的web应用程序不同,传统的方式是在连接中断时对应用程序和数据访问也随之消失。数据方面的另一个重要变化是语义网络以及相关的标准和技术。

  数据管理功能的改善使Web应用程序能够包含更多的标准桌面应用程序的功能,如本地数据存储、高水平的反应和离线功能等。

  第四步:让它能够离线工作

  把离线功能作为下一代Web应用程序的功能是很有趣的。毕竟离线访问不是老式的桌面应用程序的特点吗?未来版本的Web应用程序不也是这样吗?人们不管在什么地方都要一直保持连接。

  不过,这也许是一个展望,还不是一个现实,也许不会成为现实,至少在一段时间里在美国不会成为现实。

  下一代Web应用程序要取代传统的桌面应用软件,甚至作为潜在的基于web的钱柜娱乐,它们都必须拥有老式的离线访问功能。

  想想这种情况:你的公司创建了一个能够为用户提供更多价值的新的软件服务产品。但是,如果你的客户的员工在乘坐飞机的6个小时里不能使用这个产品,桌面应用程序就会更有吸引力。

  主要公司都注意到了要提供离线功能的现实。谷歌目前已经发布了一个名为Gears的产品的测试版,提供了离线访问谷歌应用程序的功能。

  第五步:灵活性

  现在,许多离线访问工具仍不成熟或者还没有发布。还没有许多对离线访问Web应用程序实施标准化的行动。这就意味着在一段时间里还将存在竞争的和独特的创建离线访问的工具。然而,企业现在应该评估这些技术。当你制作下一代Web应用程序的时候,不要忘了你的用户和客户会问"当我没有连接到网络的时候能不能使用这个应用程序?"

  下一代web应用程序的模式是:用户能够以独特的方式调整、适应和修改这个应用程序,以便让这个应用程序能够满足他们的特殊需求。这种模式通常称作mashup。

  在这种模式下,你的新的应用程序能够把自己与内部商业应用软件结合起来,或者与一个大型门户网站或者搜索引擎的流行的免费应用软件结合起来。它也许还能够与你的竞争对手的另一个应用软件结合起来。

  在传统的模式下,软件厂商都设法严格控制它们的应用软件的使用、升级和整合。但是,在下一代Web应用程序中,锁定你的应用程序将是一个错误。

  这些应用软件不断地变化和适应新的技术、标准和最终用户需求的能力不仅将对Web应用程序的提供方式产生巨大的影响,而且还将对人们如何看待他们正在使用的软件产生巨大影响。

更多