日期:2008-09-05  浏览次数:20950 次

为什么我们需要一个新版本的ASP?
作 者 : 青苹果电脑工作室

在前一篇文章中已经讨论过Microsoft 在设计和开发ASP+时的主要动机。ASP非常成功,为什么
还要一个新版本?有4个问题需要考虑:

● 目前,ASP脚本主要是用基本的non-typed 语言,例如VBScript 和JScript来写的(除非你安装了一
个独立的语言解释程序)。尽管ASP第一次执行页面代码时确实进行分解和缓存,这一局限导致即使
在有优势的时候,也不能使用那些strongly-typed 的语言,例如Visual Basic 和C++。而ASP+为
Web 应用程序提供了真正中立于语言的执行框架。

● 创建包含着一长串各种代码、HTML、文本、对象声明混合在一起的大型ASP页也是非常容易的。
要再利用这些代码是很困难的,除非你将其放在独立的'include' 文件中,这也不是个很好的办法。
在许多环境下,开发一个web 应用程序需要各方面的专业人员,例如,需要程序员来写代码,需要
设计师来使HTML看起来漂亮。让代码和内容混杂在一个双方都需要在其上进行操作的文件中使它们
很难在一起工作。而ASP+ 提供代码和内容的真正分离。

● 在以前版本的ASP中,大多数事情都要靠写代码来完成。想维护表单域的状态吗?写代码。想
确认客户输入的数据吗?写代码。想发出一些简单的数据值吗?写代码。想缓存页面区优化性能吗?
写代码。而ASP+ 用基于服务器的控制和从概念上来说同Visual Basic 表单工作的方式相同的事件
驱动运行范例介绍了一种真正的组件模型。新的ASP+ 服务器控制是声明式的(需要它们做一些事情
时才需要声明它们),所以你就可以少写一些代码,实际上,大多数情况下根本就不用写任何代码。

● 世界是变化的。通过'Internet device' ,例如移动电话、PDA、电视机顶盒、游戏控制台或
其他东西访问你的网站的用户比例很快就会超过使用PC和传统浏览器的用户。这就意味着我们不得
不在服务器上做更多的工作,来使我们的网页与这些不同的设备相兼容。我们不得不以全新的格式
创建输出,例如Wireless Markup Language (WML)。另外,除了要为运行创建WML,新的Internet
设备和商业应用程序还要求能够从Web应用程序发送和接收XML数据。现在用ASP做这些需要你手工
使用XML 分解,从XML 计划转换数据,或将数据转换成XML 。ASP+ Web 服务使将页面剪裁得适应
特定设备变得很简单。

除此之外,分布式应用程序迅速变化的特性要求更快地开发、更加组件化、可再利用、更易于
展开和更广泛的平台支持。新的标准例如简单对象访问协议Simple Object Access Protocol
(SOAP), 新的商业需求例如business-to-business (B2B) 数据交换,要求用新技术产生输出和与
其它系统通讯。Web 应用程序和Web 站点也需要更加灵活和可升级的服务,这些ASP+ 通过倾向于
积极的监控和应用程序失败时的自动重新启动,内存释放等等都提供了。

所以,要想满足这些要求,ASP必须要进行全面的修改来变成一个全新的编程环境。尽管目前
很少有可用于此的工具,Visual Studio 7.0 可以提供全面支持使创建ASP+ 应用程序简单(包括
ASP+ 页面和ASP+ 服务)。丰富的、基于组件的、事件驱动的编程模型特意设计成“工具友好”,
而这种支持对于所有的Visual Studio 语言,包括VB, C++和C#. 都可用。而你也可以确信第三方
的工具制造商也不会落后太多。