直播中
ASP+ 是MicroSoft.NET 的一部分,作為戰(zhàn)略產(chǎn)品,微軟為ASP+ 設(shè)計(jì)了這樣一些策略:易于寫(xiě)出結(jié)構(gòu)清晰的代碼,代碼易于重用和共享,可用編譯類(lèi)語(yǔ)言編寫(xiě) 等等,目的是讓程序員更容易的開(kāi)發(fā)出WEB 應(yīng)用,滿(mǎn)足計(jì)算向WEB 轉(zhuǎn)移的戰(zhàn)略方向的需要。
ASP+ Beta1 已經(jīng)于2000 年7 月開(kāi)始測(cè)試,下面察看一下它的一些特性。
支持編譯類(lèi)語(yǔ)言及RunTime 支持比如VB,VC++, C# ,< Script language = “ Vb “ runat = “ server “ >
比script 語(yǔ)言,編譯類(lèi)語(yǔ)言運(yùn)行速度快,更適合編寫(xiě)大型應(yīng)用。MicroSoft.NET 支持多語(yǔ)言混合編程。Page 在首次裝入時(shí)編譯,使得代碼可以在runtime 處理,這一點(diǎn)像vb6.代碼運(yùn)行在virtual 環(huán)境中,類(lèi)似java 的virtual machine。
WEB Form
ASP+ WEB Form 提供了像VB Form 一樣的編程習(xí)慣,可以觸發(fā)server 端 events 。Web form 中可以布置 web control。
Page Events
ASP+ 的設(shè)計(jì)是 object oriented ,Page object 是最頂端的 object ,Web control ,application 和自定義的page ,都從page object 繼承下來(lái)。Page object 有 OnLoad 等事件。
Web Controls
ASP+ 將提供5 類(lèi)Web controls:
與 HTML 中的 FORM 元素對(duì)應(yīng)的Control,比如:button ,text
list 類(lèi) control ,比如 Repeater ,DataList ,DataGrid ,
Rich Control
Validation Controls
Mobile Controls ,為WAP 設(shè)備提供 WML 。
開(kāi)發(fā) Web Services
Web Services 允許系統(tǒng)向 Web 輸出函數(shù) ,輸出方式是 URIs ,調(diào)用之后返回 XML.
比如:
< % @ WebService Language = “ c# “ % >
using system.web.services;
public class Shipping{
[webmethod]
public string OrderStatus ( string OrderNumber ){
//代碼
}
}
調(diào)用: http://orders/tracking.asmx/OrderStatus?OrderNumber=BRU123
調(diào)用協(xié)議可以用 HTTP-GET ,HTTP-POST ,HTTP-SOAP.
Web Service 為 WEB 系統(tǒng)集成,為基于 WEB 的分布式計(jì)算提供了良好的框架。
Caching 改進(jìn)
ASP+ 提供cache API ,程序員可以控制Cache 的使用,在某些情況下,可以編寫(xiě)性能更好的應(yīng)用。
Debugging 和 Tracing
ASP+ 內(nèi)建的 Debugger 支持多語(yǔ)言混合編程,可以像 VB 中一樣調(diào)試程序。增加了Trace 和 profiler 的功能。
分離代碼與HTML 模版
代碼可以放在 class 模塊中。
分離的好處 ,便于程序員與頁(yè)面制作人員獨(dú)立工作,也便于代碼共享。
庫(kù)
模塊化的支持,是編寫(xiě)大型應(yīng)用程序的必備,ASP+ 的模塊化支持非常好。提供了常用庫(kù),比如 SMTP SendMail ,提供了結(jié)構(gòu)化的代碼組織方式 ,比如
< % @ Import NameSpace = “ system.asp.util” % > ,引用了util 包。
配置和實(shí)施
ASP+ 的配置信息放在 XML 文件中,而不是注冊(cè)表中, 實(shí)施ASP+ 應(yīng)用,只要把程序拷貝到一個(gè)目錄,不需要注冊(cè)任何對(duì)象。因?yàn)樽?cè)有時(shí)候需要原有的服務(wù)STOP ,等一系列問(wèn)題。這真是非常好。
ASP+ 支持編譯過(guò)的程序的運(yùn)行,可以保護(hù)技術(shù)秘密。
縱觀以上特性的介紹,ASP+ 改進(jìn)了很多ASP 的問(wèn)題,對(duì)于熟悉VB 、VC 或其他傳統(tǒng)開(kāi)發(fā)平臺(tái)的程序員,ASP+ 提供了一樣好的開(kāi)發(fā)Web 應(yīng)用的平臺(tái),可以說(shuō)ASP 是基于Script 的,而ASP+ 基于完整的OO 程序設(shè)計(jì)思想。ASP+ 對(duì)于WEB Service 的支持,使得Web 應(yīng)用的集成非常方便。
二、與JAVA 的比較
作 者 : 聯(lián)想事業(yè)部 李建奇
JAVA 這種語(yǔ)言,偶然成為了當(dāng)前Web 計(jì)算的主要語(yǔ)言,獲得了廣泛的業(yè)界支持,它potabale ,良好的oo 屬性 ,是互連網(wǎng)計(jì)算的強(qiáng)大的粘合劑。下面從兩個(gè)方面觀察一下java與微軟的solution 的差別。
業(yè)界支持
IBM 的“e-business application framework“架構(gòu)在Java,xml,corba ,IBM 有VisuageAge,WebSphere 作為web 開(kāi)發(fā)的工具。Ibm 認(rèn)為選擇application framework 有幾個(gè)原則:不依賴(lài)于特定的平臺(tái),建立在工業(yè)標(biāo)準(zhǔn)之上,大部分計(jì)算放在server 端,scalable 等。
由于Oracle,sybase, 等業(yè)界廠商的廣泛支持,java 可以說(shuō)是web 計(jì)算事實(shí)上的工業(yè)標(biāo)準(zhǔn)。Java 的package 也豐富起來(lái),支持各種應(yīng)用的開(kāi)發(fā)。
開(kāi)發(fā)模型
國(guó)內(nèi)的軟件廠商在向Web 計(jì)算遷移的時(shí)候,大多選擇了java ,比如核心證券交易系統(tǒng),用友財(cái)務(wù)系統(tǒng),南北財(cái)務(wù)軟件。核心軟件和南北財(cái)務(wù)系統(tǒng),用applet 開(kāi)發(fā)客戶(hù)端界面,使用起來(lái)與傳統(tǒng)的軟件沒(méi)有什么差別。
可以說(shuō),目前采用 html 開(kāi)發(fā)界面復(fù)雜的應(yīng)用尚不是很合適,這是選擇java applet 的理由。那么,ASP+ 出來(lái)之后,開(kāi)發(fā)復(fù)雜的基于server 的應(yīng)用要方便的多。
目前采用applet 的應(yīng)用,把很多計(jì)算邏輯方在客戶(hù)端,這種方式尚不是未來(lái)的計(jì)算集中在server 端的方式。也許,java 也會(huì)推出新的package 支持這種應(yīng)用。
在server 端,java 采用 servlet、java bean ,ASP 采用Script、com 組件,目前的計(jì)算模式相類(lèi)似。
ASP+ 中提到的web service 集成的方式,目前微軟力推SOAP、 UDDI 。但是,這些是建議成為w3c 標(biāo)準(zhǔn),不依賴(lài)于特定的平臺(tái)。
從以上關(guān)于業(yè)界支持、開(kāi)發(fā)模型的觀察,可以說(shuō)java 目前更適合廣泛的web 計(jì)算。同時(shí),我們期待ASP+ 的到來(lái),期待更好的WEB 計(jì)算模型的到來(lái)。
參考資料:
1、《Active Server Pages+: ASP+ Improves Web App Deployment, Scalability, Security, and Reliability》
-------September 2000 issue ,MSDN Magazine
2、《Building e-business applications 》 ,IBM Solution Developer Program