作者:鲍学阳
来源:《科技创新导报》 2011年第12期
鲍学阳
(杭州国际服务工程学院 浙江省杭州市 310000)
摘 要:ASP.NET是用于形成Web的应用程序的内容丰富的编程框架。它是一种创建动态Web应用程序的全新编程方法,本文主要阐述ASP.NET技术概述,优点,ASP.NET的模型。
关键词:ASP.NET 概述 优点 模型
中图分类号:TP2 文献标识码:A 文章编号:1674-098X(2011)04(c)-0017-01
ASP.NET是用于形成Web的应用程序的内容丰富的编程框架。它是一种创建动态Web应用程序的全新编程方法,它给开发人员提供了比以往更大的灵活性和更多的功能。通过把通用代码置于控件中,并将表示逻辑和商务逻辑分离开来的崭新方法,ASP.NET使应用程序的开发和维护更加容易。
1 概述
ASP.NET是用于形成于Web的应用程序的内容丰富的编程框架。它是一种创建动态Web应用程序的全新手段,它给开发人员提供了比以往更大的灵活性和更多的功能。通过把通用代码置于控件中,并将表示逻辑和商务逻辑分离开来的崭新方法,ASP.NET使应用程序的开发和维护更加容易。它是Microsoft.NET Framework的组成部分,允许使用Framework支持的任何语言创建代码。像JSP、PHP和ASP一样,ASP.NET也是一种服务器端技术,它可以制作动态WEB页的内容。Visual Studio.NET不是ASP.NET必要的组成部分,许多开发人员没有它照样可以开发网站。不过,一旦安装了.NET Framework SDK,用户就可以在任何环境下开发ASP.NET应用程序。
2 ASP.NET 的优点
ASP.NET是一种用于创建内容丰富的动态网站、WEB应用程序和XML WEB服务的新编程模型。ASP.NET使用编译的、事件驱动编程模型从而提高运行速度和分离应用程序逻辑和用户界面。用ASP.NET可以很容易的开发基于三层架构的B/S应用程序。与以往的编程模型相比,这种新编程模型提供了基于组件的架构和开发范例。ASP.NET提供了下面一些超越以前WEB 技术的重要特性。
2.1 优良的性能
ASP.NET在服务器上运行的是经过编译的CLR代码。与以前的技术相比,ASP.NET能够充分利用Binding(绑定),及时编译,本地优化,缓冲服务来提高程序的性能。
2.2 大量工具箱的支持
在Visual Studio 的开发环境中,ASP.NET具有丰富的工具箱和设计器。如所见即所得的编辑方式,支持拖放的服务器控件,以及动态的配置管理。此外还有许多第三方控件。
2.3 强大的功能以及良好的机动性
因为ASP.NET是建立在CLR基础上的,所以整个平台的功能和适用性更加适合网络应用程序的开发。ASP.NET可以使用很多种语言来编写。此外,CLR的协同工作能力保证以前开发的基于COM 的程序,在移植到ASP.NET后,依然可以正常使用。
2.4 新的配置管理方式
ASP.NET使用的是一种基于文本格式,等级式的配置系统。一个ASP.NET应用程序只需将必要的程序拷贝到服务器上就可以使用了。对于正在运行中的己编译的代码,也同样可以对配置进行更改,而不需要重启服务器。
2.5 可移植和良好的适用能力
当ASP.NET的一条线程出现异常情况后,一个新的进程会在它的地方重新建立,继续担负原进程所处理的任务,这就使应用程序能不中断地处理客户的请求。
2.6 超强的扩展度
ASP.NET崭新的结构体系允许开发者开发自己的程序,且ASP.NET下任何一个组件都能够被用户自己开发的组件扩展或替换。
3 ASP.NET的模型
3.1 ASP.NET的页面模型
ASP.NET是一个完整的WEB应用程序开发平台。它完整地包含了在WEB应用程序或是XML WEB服务中处理进入的请求并创建输出响应所需的东西。通常ASP.NET运行驻留在 Internet 信息服务(Internet Information Service, IIS)中,IIS是在 WINDOWS NT/2000/2003 平台下专用的服务器软件,提供常用的服务器功能,如FTP, SMTP,HTTP等。
ASP.NET的Web页面是以请求→接收请求→处理请求→发送响应这样的模式在工作,每一次与客户端的连接都会引发一次新的请求,所以一个Web Page的生命周期是以一次请求为基础的。当IIS收到客户端的请求的时候,会将请求给aspnet_wp这个进程来处理,这个进程会查看请求的应用程序域是否存在,如果不存在则会创建一个,然后会创建一个HTTP运行时(HTTP Runtime)来处理请求,这个运行时“为当前应用程序提供一组ASP.NET运行时服务”。当应用程序实例处理请求的时候,它会创建请求页面类的实例,执行它的Process Request方法来处理请求,这个方法也就是Web Page生命周期的开始。
3.2 ASP.NET的代码模型
ASP.NET页面由两部分组成:一是使用文本和服务器控件的用户界面定义,二是用户界面行为和服务器端代码形式的 WEB应用程序逻辑的实现。ASP.NET提供了全新的代码模型,使网页开发者和开发工具能够更清晰、更容易地把代码和表示分开。代码模型使得开发和设计在团队中的分工更加容易,并增加了代码的可读性和可维护性。
3.3 ASP.NET 的页面执行模型
在ASP.NET中,首先由IIS处理进入的请求,把请求传给ASP.NET中的HTTP运行进行处理。在页面处理程序工厂尝试在请求的.aspx文件相关的ASP.NET高速缓存内查找以前编译过的页
面类。当查找失败时,处理程序工厂将读取和解析文件,并创建一棵解析树(parse tree)。然后通过 Page指令中的 Language attribute,用与页面相关的语言把解析树转变为代码。然后,页面处理程序工厂调用适当的编译程序,动态的编译从Page中得到的类。页面处理程序工厂还将新建的类放置到ASP.NET 速缓存中,并把高速缓存记录和文件相关联起来。文件相关监视.aspx 文件做出的变化,并保证任何变化都自动地使高速缓存记录无效,在下次请求时将再次解析修改过的文件。
3.4 ASP.NET Page Cache(页面缓存)
形成动态Web页会耗用各种各样的系统资源。当Web服务器收到页面请求时,它通常必须从外部数据源(如数据库或Web Service)检索所请求的信息。对这些资源的访问通常需要通过有限的资源池(如数据库连接、套接字或文件描述符)进行。因为Web服务器通常需要处理很多并发请求,所以对这些共享资源的争夺可能会延迟页面请求,直到资源变为可用。
参考文献
[1]邵丽萍,肖世德.新一代Web开发技术ASP.NET的发展与探析[J].微计算机信息,2005.
[2]ASP动态网站编程.清华大学出版社,2008.
因篇幅问题不能全部显示,请点此查看更多更全内容