明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

ASP+與JSP之間的抉擇

[摘要]Blueski為您編譯。 原文名:JSP VS ASP Part 2: The Future According to ASP+ 英文作者沒有記下,非常抱歉 由于我同時是ASP和JSP的程序員,所以正開始寫一系列的文章來比較兩者的差別, 當(dāng)我寫到一半時,ASP+被宣布了,所以我在重新開始審視這個問...
Blueski為您編譯。

原文名:JSP VS ASP Part 2: The Future According to ASP+

英文作者沒有記下,非常抱歉

由于我同時是ASP和JSP的程序員,所以正開始寫一系列的文章來比較兩者的差別, 當(dāng)我寫到一半時,ASP+被宣布了,所以我在重新開始審視這個問題。
我正在做一個JSP項目和一個ASP項目,后者十分有趣,因為它開始是采用ASP3.0, 但當(dāng)項目結(jié)束后我會將轉(zhuǎn)換為ASP+。那時我將可以對ASP+有更近的考察,并提供更好的 ASP+和JSP的比較。本文提供了我對ASP+,以及它對于象我這樣的一個普通開發(fā)人員會產(chǎn)生的影響做一個初步觀察。

通過最初步的比較,我發(fā)現(xiàn):
1) 面向?qū)ο笮?
ASP+將C#作為一種面向?qū)ο笳Z言,在很多方面來看,C#將成為微軟的與Java相似的語言。 C#另一個有趣的地方是所有對象都自動變成為COM對象。如果C#能取得很大的市場份額,那么它將給ASP+帶來類似于Java的功能,并且具備更快的性能,因為它可以和Windows環(huán)境緊密集成。 C# 是ASP+開發(fā)中一個最重要的功能,微軟會將C#發(fā)展成為Java的強勁對手。這也是他們.Net框架的一個重要組成部分。我認(rèn)為C#是微軟在編程市場上擊敗對手的主要工具。我期待著微軟能在這個產(chǎn)品后面傾注全力,這樣,C#可以成為許多程序員的又一種選擇。C#產(chǎn)生的結(jié)果是將進(jìn)一步加固微軟和Sun產(chǎn)品的戰(zhàn)線。這對用戶是有利的,他們可以選擇兩者之一來開發(fā)新的應(yīng)用。

2) 數(shù)據(jù)庫連接:
ASP另一個亮點是它使用ADO對象,ODBC, OLE-DB和事務(wù)處理管理器。因此ASP Web數(shù)據(jù)庫應(yīng)用開發(fā)特別簡單。ASP+發(fā)展了更多的功能,因為有了ADO+!ADO+帶來了更強大更快速的功能。JSP和JDBC目前在易用性和性能上同ASP/ADO相比已有些落后,當(dāng)新版本ASP+/ADO+出現(xiàn)后這樣的差別會更明顯。我個人希望SUN應(yīng)盡快能花大力氣來追趕ASP+/ADO+的組合。

3)大型站點應(yīng)用:
ASP+將對大型站點(web farms)有更好的支持。事實上,微軟在這方面付出了巨大的努力。 ASP+可以讓你考慮到多服務(wù)器(multiple servers)的場合,當(dāng)你需要更強大的功能時,僅僅只需要增加一臺服務(wù)器。整個.Net框架已經(jīng)充分地提供了這個方法。ASP+提供了外部會話狀態(tài)(external session state)來提供內(nèi)置式web farm的支持。另外,由于請求的各組件相互間經(jīng)過了充分的優(yōu)化,所以速度很快。 于是ASP+現(xiàn)在可以在大型項目方面與JSP一樣具有等同的能力。 而ASP+還有價格方面的優(yōu)勢,因為所有的組件將是服務(wù)器操作系統(tǒng)的一部分。對于JSP,你需要購買昂貴的應(yīng)用服務(wù)器群來達(dá)到同樣的目的。

4) ASP+還提供更多的其它方面的新特性,例如:
*內(nèi)置的對象緩存和頁面結(jié)果緩存。
*內(nèi)置的XML支持,可用于XML數(shù)據(jù)集的簡單處理。
*服務(wù)器控制提供了更充分的交互式控制。
ASP+確實對ASP進(jìn)行了較大的發(fā)展。

在我審視完ASP+后,我的初步結(jié)論是:我未來項目主要還是要采用基于Java/JSP的技術(shù)。這有以下三個理由:
1) 要真正發(fā)揮ASP+潛力,你要使用C#或vb.net。這兩種語言將成為ASP+標(biāo)準(zhǔn)的核心的腳本語言。 這對ASP的未來發(fā)展很有好處。我向來不喜歡用當(dāng)前的Visual Basic來制作com對象。新的ASP+核心腳本語言更能發(fā)揮ASP+的價值。
顯然,所有這些ASP+的新進(jìn)展促使我對今后語言選擇做一個決定,它將占據(jù)我未來的無數(shù)時間和努力。 當(dāng)Java發(fā)展起來時我學(xué)習(xí)了Java,那時我預(yù)感到這將是圍繞我未來程序生涯的語言。于是,JSP成為我在web開發(fā)中的第一選擇。當(dāng)我目前的ASP項目完成后,我將重新考慮C#是否符合我的編程工具體系。 現(xiàn)在我已經(jīng)是一個JSP fan,除非微軟能夠?qū)⑽艺麄扭轉(zhuǎn)過去,我猜想我正面臨ASP+的巨大挑戰(zhàn)。

2) ASP+依然完全鎖定在微軟的操作系統(tǒng)中。JSP比ASP+擁有更大的范圍,它在別的服務(wù)器配置中也有很好的伸縮性。雖然Windows 2000 的優(yōu)越性日益顯露,這對開發(fā)人員不構(gòu)成問題。

3) 我并不能確信是否我能認(rèn)同ASP+結(jié)構(gòu)的各種方面,這需要更深入的分析,所以,我很猶豫。如果我使用了1-2個月,也許會改變看法。總的來說,這需要在一個很高的層次來看待這個beta產(chǎn)品。 作為一個ASP開發(fā)人員,ASP+讓我停下來反思。未來8個月的ASP新項目將變得很困難。為什么?因為 ASP+和C# 帶來了一個難題,它們要到2001年才正式提供。而很多性能方面的要求現(xiàn)在就需要確定。由于ASP+只是一個beta軟件,所以現(xiàn)在我的第一個選擇反而很簡單了。現(xiàn)在的項目就采用ASP3.0。我認(rèn)為各種beta版的語言都不太可信。

但我不能忽視ASP+,因為它很快就要推出,并代表了ASP的未來。ASP項目的管理者還需要考慮到未來的可平滑移植性及付出的時間代價等。另一個結(jié)果則是,這似的在近期使用PHP和JSP來代替ASP變得更可靠一些。
總的來說,
1) 如果使用ASP+,你將花費額外的時間學(xué)一些新的工具。
2) 新的工具有待于版本化,所以為什么不先關(guān)注于目前存在的東西?
3) ASP+將來會擁有的特性JSP已經(jīng)擁有。
4) ASP+將你鎖定到純Microsoft的體系中。(我讀了一個關(guān)于Microsoft將.Net移植到 Linux的故事,但我覺得不太可信。)
最后,我預(yù)測會有很多人加入到PHP和JSP的行列?墒,仍然會有一部分人會受到 ASP+給業(yè)界帶來的激動所感染。(我從沒看到一個beta編程產(chǎn)品會帶來如此的震撼。)


以下是一篇相關(guān)的討論.net的文章。

ASP+以自由軟件作為開始,現(xiàn)在已經(jīng)漸漸成為Microsoft的.Net框架的基石之一。 Sun應(yīng)該從中得到教訓(xùn)。特別注意的是,你需要許可證才能升級到ASP+,因為它和太多的產(chǎn)品集成在一起了。.Net框架太大了。在假定某個產(chǎn)品可以成為真正的產(chǎn)品之前,我通常等待它的第一個service pack。所以,即使ASP+已經(jīng)在2001第一季度被版本化,我仍然要等到2001第二季度。 當(dāng)然,因為ASP+ 已經(jīng)產(chǎn)生了如此的激動人心,一旦推出,很多商店都會馬上提供ASP+。 事實上我早已經(jīng)使用beta版ASP+! 它使用 .aspx 后綴,這使我我感覺Microsoft會在近期推出第一個ASP+的service pack。


下一年我們將看到在這個巨大的市場上Sun和Microsoft如何展開決斗,而程序員門又將做什么樣的選擇呢?





標(biāo)簽:ASP+與JSP之間的抉擇