top
Loading...
ASP+全新接觸
ASP+是ASP的下一代版本,然而ASP+又并非從ASP3.0自然演化而來,在許多方面,ASP+與ASP有著本質的不同。ASP+完全基于模塊與組件,具有更好的可擴展性與可定制性,數據處理方面更是引入了許多激動人心的新技術,正是這些具有革新意義的新特性,讓ASP+遠遠超越了ASP,同時也提供給web開發人員更好的靈活性,有效縮短了web應用程序的開發周期。ASP+與Windows 2000 Server/Advanced Server的完美組合,為中小型乃至企業級的web商業模型提供了一個更為穩定,高效,安全的運行環境。

一.構造ASP+的運行及開發環境

迄今為止,ASP+尚處于測試階段,至于我們目前所見到的有關ASP+的測試性評論,一部分是基于2000年7月份Microsoft的專業開發人員大會上發布的Beta版ASP+作出,另一部分則是基于.NET Framework SDK預覽版中附帶的ASP+作出,.NET Framework SDK預覽版可以從MSDN上下載。
ASP+被設計成與ASP并行運行,這就意味著你可以在你的機器上同時使用ASP+,ASP兩個版本。

總結一下,目前運行ASP+的系統需求是的:

1.服務器端:

1) Windows 2000 Server/Advanced Server,或Windows 2000 professional

2) IIS5.0

3) ASP+或Microsoft .NET Framework SDK

2.客戶端:

Internet Explorer5.5

ASP+的開發環境:

首選Visual Studio 7.0(具有所見即所得的設計器與調試器,專為基于VB,C#,C++的ASP+編程而設計)。當然,如果你是高手,使用NotePad或Visual Studio6.0或是Visual Interdev也不稀奇,只是它們都不支持新的對象語法和服務器端控件。

ASP+的開發語言:

VB(是時候對VBScript說ByeBye了),事實上,更準確地說是Visual Basic .NET。此外還可用C#以及JScript來開發。

二. ASP+的四大新特性

1. ASP+基于全新的架構

ASP+是完全基于NGWS運行時框架的。

NGWS運行時框架(NGWS runtime framework)是Microsoft提出的面向下一代web的.NET架構的核心組成部分。NGWS運行時是一種全新的針對Windows的底層基礎架構,它位于Windows的運行和用戶程序之間,被用來管理代碼的執行。它在開發者和操作系統之間提供一種封裝,使Wind 編程變得更加簡單。NGWS運行時是完全基于對象的,它擴展了COM(Component Object Model,組件對象模型)的結構,為可擴展分布式應用程序提供了更多的新的增強性服務。有了NGWS運行時,我們再不必為忘記將ASP+頁面中某個對象清零而擔心,因為它會自動處理內存垃圾回收。同時一些對操作系統至關重要的底層服務的訪問也變得更為輕松,安全性,認證,文件系統訪問,網絡信息,等等等等。。。一切都不成問題!

2.ASP+通過編譯來執行

ASP+針對ASP的執行表現作了許多改進,頁面腳本不再通過解釋來執行,而是通過NGWS(Next Generation Web Services,下一代web服務)兼容的編譯器編譯來執行。別誤會!我們所指的編譯不是要你生成.EXE文件。

你仍然和以前一樣編寫代碼,編譯工作在腳本代碼第一次收到請求并運行時由NGWS運行時自動完成,同時保存一份緩存的拷貝。當腳本再次收到請求時,系統直接運行緩存的拷貝,從而大大加快了執行速度,因為我們現在運行的是經過編譯的代碼。

如果源腳本有了改動,運行時會自動從緩存中丟棄舊的編譯版本,以便下次收到執行請求時重新編譯代碼。

3.數據緩存技術

好了,現在我們有了一個更快的編譯過的ASP+,但是這還是不夠。設想一下這樣的情形:你有一個動態生成的ASP+頁面,該頁面的內容源于一個后臺數據庫,而這個數據庫可能好幾天才得以更新一次。。。現在,假設你的服務器收到了來自客戶端的一個請求,服務器會與數據庫建立連接,執行查詢,取回記錄,反饋給用戶,很簡單,對嗎?可是當服務器在同一時間要處理成千上萬的相同的請求,會產生什么樣的后果呢?毫無疑問,結果是無謂的重復運算與可怕的系統資源占用。

這就是為什么要用到數據緩存技術。

在ASP+中,當服務器第一次從數據庫中取回數據后,數據被保存在變量中,當服務器接到相同的請求后,經過緩存的數據直接從服務器傳遞到客戶端,現在我們可以不必打攪數據庫了。

當然,你得在代碼中設定數據的緩存期限,到了規定的時間或滿足特定的條件,就清空緩存,取回新的數據。至于如何來設定緩存的期限,就完全取決于你的需求與技巧了。

4.ADO+,更易于使用的ADO

好馬配好鞍,Microsoft在推出ASP+的同時,也推出了全新的ADO,即ADO+。ADO+以一種n維(n-dimensional)的,面向對象的方式來處理數據。在ADO中,數據以二維的形式表現出來,即行,列。但如果RecordSet中有一個特定的行列本身又是一個RecordSet,從而形成一個新的維度呢?這樣的情況在ADO中很棘手,而用ADO+創建這樣的多維RecordSet卻只是舉手之勞。

事實上,上面所說的RecordSet在ADO+中已不復存在,取而代之的是DataSet。在ADO+中,DataSet相當于RecordSet的集合,DataView則類似于RecordSet。

三.服務器端控件

ASP+的另一個誘人之處就是增加了更多好用的服務器端控件,Microsoft顯然很好地聽取了web開發者的反饋,新增的控件不僅增強了ASP+的功能,同時將以往讓開發者們頭痛的許多繁瑣重復的工作都交給控件去完成了。以下是對這些控件的大致分類:

1.List controls

這類控件使你在客戶端瀏覽器中創建列表變得更加輕松簡單,同時給你更多的可定制性,現在你可以花更少的精力在頁面布局上了。例子有:Repeater, DataList以及DataGrid controls

2.Rich controls

這類控件被用來在客戶端生成更復雜,豐富的HTML元素。如:calender Control

3.Validation controls

驗證控件屬于隱式控件,它們被用來執行客戶端與服務器端的驗證。這類控件的數量相當之多,可以完成以前需要手工編寫代碼的各式各樣的驗證任務,程序員現在可以省去大量的If... else語句了。如:RequiredFieldValidator control, CompareValidator control, RangeValidator control, and RegularExpressionValidator control

4.其他

包括Intrinsic controls,以及我們渴望已久的SendMail組件,加/解密組件,可以自定義的執行表現記數器,可以讀寫NT日志的組件,網絡訪問組件。。。等等。

四. ASP+的最終版本

很顯然,預覽版的ASP+與運行時框架還不是十全十美的。雖然它們足以體現ASP+的新特性,然而最終版本的ASP+要比我們正在討論的這個版本支持更多的功能,而且更加完善,它包含一些我們目前無法實現的特性:

1.支持多種Windows平臺

這些平臺包括:Windows 2000,Windows NT4.0,Windows95/98。而預覽版本僅支持Windows 2000 server與Windows professional。針對Windows 95/98的ASP+在功能上有所限制,所以只能稱其為“個人版”。

2.XHTML兼容

目前,由服務器端ASP+控件產生的輸出是基本的HTML3.2,和XHTML并不兼容。XHTML由W3C(World Wide Web Consortium)推薦,如果輸出和XHTML兼容,那么XML語法分析器就能正確地操控這些內容,否則就會出錯。

Microsoft正試圖讓ASP+最終版的服務器端控件能夠生成XHTML兼容的代碼,然而由于客戶端瀏覽器的差別,兼容的程度現在仍很難預測。

3.新的管理工具

最終版的ASP+將包含能讓你輕松維護與配置程序的管理工具。你將看到能管理諸如config.web,global.asax之類文件的工具,它能以圖形化的界面讓你看到程序的執行狀況,以及調試整個程序時的跟蹤細節。
作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗