?? 三種web開發(fā)主流技術(shù)asp-php-jsp的評(píng)價(jià)[轉(zhuǎn)載] --希望給大家作為參考.txt
字號(hào):
作者:Legendboy
日期:2000-9-10 21:38:15
三種主流技術(shù)是哪三種呢?我主要講一下ASP(ActiveX Server Page)、PHP、Java這三
種技術(shù)。主要是基于我到現(xiàn)在已經(jīng)使用的以下產(chǎn)品而談:
ASP
MS IIS 4/Visuale Interdev 6
PHP
Apache 1.2.x/HomeSite 4.5/PHP 4
Java
iPlanet Web Server 4.1/JBuilder 3.5/JDK 1.2.2
以上技術(shù)本人卻實(shí)使用過,而且已經(jīng)使用它們做過項(xiàng)目,基于以前的工作經(jīng)驗(yàn)給初學(xué)者
和正在對(duì)自己應(yīng)用系統(tǒng)進(jìn)行選擇的同仁談?wù)勛约簩?duì)它們的評(píng)價(jià),以做參考,同時(shí)也請(qǐng)大
家提出自己的想法和意見 ,多交流。但是我有一個(gè)這樣的看法:“一個(gè)產(chǎn)品它存在就
有存在的理由,它不可能一無(wú)是處,而是需要你去選擇一個(gè)最合適你的技術(shù)、產(chǎn)品”。
一個(gè)好的技術(shù)要用在最合適它的地方,所以本文可以做為你參考的一個(gè)文章,而不會(huì)告
訴你任何一個(gè)技術(shù)的“最”。
ASP
我們先來談?wù)勊驗(yàn)锳SP是到現(xiàn)在開發(fā)人郡最廣的一個(gè)技術(shù)了,所以想來大家也會(huì)對(duì)
它最關(guān)注。ASP是一個(gè)近乎完美的想法,可是因?yàn)镸S一個(gè)大的環(huán)境的問題所以在一些方
面反回使它縮小在了一個(gè)小的框架中,如果它能更好的跳出這個(gè)框架,我想由它現(xiàn)在的
基礎(chǔ)將無(wú)人可比。
ASP更精確的說是一個(gè)中間件,這個(gè)中間件將Web上的請(qǐng)求轉(zhuǎn)入到一個(gè)解釋器中,在這個(gè)
解釋器中將所有的ASP的Script進(jìn)行分析,再進(jìn)行執(zhí)行,而這時(shí)可以在這個(gè)中間件中去
創(chuàng)建一個(gè)新的COM對(duì)象,對(duì)這個(gè)對(duì)象中的屬性和方法進(jìn)行操作和調(diào)用,同時(shí)再通過這些
COM組件再完成更多的工作。所以說,ASP強(qiáng)大的不在于它的VBScript, 而在于它后臺(tái)
的COM組件,這些組件來無(wú)限的擴(kuò)充了ASP的能力。
強(qiáng)勢(shì):
1、簡(jiǎn)單易學(xué)。Basic有誰(shuí)不會(huì)?很少會(huì)有人舉手,所以有人在說這個(gè)開發(fā)基礎(chǔ)是最廣
的。而且MS有一向做的非常好的聯(lián)機(jī)手冊(cè),本地化語(yǔ)言的幫助,同時(shí)非常快的出現(xiàn)教學(xué)
書籍,這樣會(huì)大大方便開發(fā)人員的學(xué)習(xí)和對(duì)技術(shù)的深入研究。
2、安裝使用方便。裝好一個(gè)Windows 2000,只要你安裝了IIS哪么ASP就可以使用了,
從沒有什么需要你花心思去配置的。而說實(shí)話,ASP的調(diào)優(yōu)也不難做,而要做到最細(xì)時(shí)
也不是一般人能做的了的。
3、開發(fā)工具強(qiáng)大而多樣。這個(gè)我不用說了,可以說的就是我以前使用VB中的Web Class
開發(fā)出的Web應(yīng)用一點(diǎn)不差,當(dāng)時(shí)讓許多人大吃一驚,VB也能做ASP上的應(yīng)用!!!其實(shí)
這正說明了ASP開發(fā)工具的多樣化,同時(shí)它們的功能也很強(qiáng),這一點(diǎn)已經(jīng)被許多程序員
所津津樂道。易用、簡(jiǎn)單、人性化,這本就是微軟的強(qiáng)項(xiàng)喲。
4、效率高。在低的訪問量下,ASP能體現(xiàn)出一定的效率,這時(shí)它對(duì)機(jī)器的要求并不高。
弱勢(shì):
1、Windows本身的所有問題都會(huì)一成不變的也累加到了它的身上。安全性、穩(wěn)定性、跨
平臺(tái)性(Win2K已經(jīng)不再支持Alpha了)都會(huì)因?yàn)榕cNT的捆綁而顯現(xiàn)出來。
2、ASP由于使用了COM組件所以它會(huì)變的十分強(qiáng)大,但是這樣的強(qiáng)大由于Windows NT系
統(tǒng)最初的設(shè)計(jì)問題而會(huì)引發(fā)大量的安全問題。只要在這樣的組件或是操作中一不注意,
哪么外部攻擊就可以取得相當(dāng)高的權(quán)限而.....
3、由于ASP還是一種Script語(yǔ)言所沒除了大量使用組件外,沒有辦法提高其工作效率。
它必須面對(duì)即時(shí)編繹的時(shí)間考驗(yàn),同時(shí)我們還不知其背后的組件會(huì)是一個(gè)什么樣的狀
況。
4、無(wú)法實(shí)現(xiàn)跨操作系統(tǒng)的應(yīng)用。當(dāng)然這也是微軟的理由之一,只有這樣才能發(fā)揮ASP最
佳的能力。可是我卻認(rèn)為正是Windows限制了ASP,ASP的概念本就是為一個(gè)能讓系統(tǒng)運(yùn)
行于一個(gè)大的多樣化環(huán)境而設(shè)計(jì)的。
5、還無(wú)法完全實(shí)現(xiàn)一些企業(yè)級(jí)的功能:完全的集郡、負(fù)載均橫。
總結(jié):
適用人群:
熟悉MS架構(gòu)的人員。想用最短的時(shí)間學(xué)習(xí),同時(shí)想用最簡(jiǎn)單的方式完成自己的應(yīng)用。
適用平臺(tái):
Windows系列平臺(tái)
適用應(yīng)用:
企業(yè)內(nèi)部管理信息系統(tǒng)、中小Internet應(yīng)用、快速數(shù)據(jù)庫(kù)開發(fā)的應(yīng)用。
學(xué)習(xí)方式:
IIS 4 Online Help(中文)
MSDN Lib相關(guān)知識(shí)
市場(chǎng)上眾多的ASP書籍
推薦開發(fā)工具:
Visual InterDev
Home Site
Front Page
推薦開發(fā)環(huán)境:
Windows 2000 Server
MS SQL
推薦應(yīng)用環(huán)境(最少):
Windows 2000 Server/MS SQL 7
PIII 500/256M RAM/18G HD
PHP
PHP是一個(gè)什么原因出現(xiàn)的呢?它是一個(gè)技術(shù)人員希望能用一個(gè)快速的方面來完成他自
己的個(gè)人主頁(yè)中的一個(gè)小應(yīng)用。而在他一發(fā)不可收時(shí)出現(xiàn)了php,它使一個(gè)人能在多種
操作系統(tǒng)下迅速的完成一個(gè)輕型的Web應(yīng)用。所以在短短的幾年里,php迅速的升級(jí)了它
的版本,同時(shí)在GNU的世界里找到了一個(gè)青梅竹馬的伙伴----Apache。這終于讓php有了
基礎(chǔ),能在一個(gè)最佳的環(huán)境中運(yùn)行,同時(shí)由于兩個(gè)產(chǎn)品都是公開源代碼的產(chǎn)品,所以大
家可以使用它們的源代碼將這兩個(gè)產(chǎn)品用最完美的方式結(jié)合到一起,使用起來就如一個(gè)
產(chǎn)品一樣。個(gè)人認(rèn)為php是自由軟件在web應(yīng)用平臺(tái)上一個(gè)決勝的工具,如果沒有php的
出現(xiàn),還會(huì)有許多人認(rèn)為自由軟件就代表了對(duì)開發(fā)人員的高技術(shù)要求、難記的代碼、復(fù)
雜的工具.....php使一個(gè)會(huì)使用basic的人員在極短的時(shí)間里快迅學(xué)習(xí)并完成用戶需要
的應(yīng)用。
怎么說php呢?如果說ASP是一個(gè)COM,哪么php說的更精確了可以說php是一個(gè)純粹的
Script翻譯器。這也是php由3升級(jí)為4的一個(gè)重大原因,在4這個(gè)版本里它重寫了語(yǔ)法分
析器,從而加快了php整體的效能。而且從中你也就會(huì)明白為什么php需要支持這種或是
哪種擴(kuò)充功能時(shí)它一定要與相應(yīng)系統(tǒng)的lib庫(kù)進(jìn)行再編繹的原因。正因?yàn)樗钦诘?“翻譯器”,所以它是將script翻譯成為需要執(zhí)行的函數(shù),再去執(zhí)行它們,外部擴(kuò)充不
能由一些“動(dòng)態(tài)加載”的方式進(jìn)行,所以只能靜態(tài)的編繹進(jìn)php中(這只能在windows中
除外)。
強(qiáng)勢(shì):
1、一種能快速學(xué)習(xí)、跨平臺(tái)、有良好數(shù)據(jù)庫(kù)交互能力的開發(fā)語(yǔ)言。ASP比不上它的就是
這種跨平臺(tái)能力了,而正是它的這種能力讓Unix/Linux有了一種與ASP媲美的開發(fā)語(yǔ)
言。語(yǔ)法簡(jiǎn)單、書寫容易、現(xiàn)在市面上也有了大量的書,同時(shí)Internet上也有大量的代
碼可以共享,對(duì)于一個(gè)初學(xué)者想學(xué)些“高深的Unix”下的開發(fā)來說是一個(gè)決好的入手
點(diǎn)。
2、與Apache及其它擴(kuò)展庫(kù)結(jié)合緊密。php與Apache可以以靜態(tài)編繹的方式結(jié)合起來,而
與其它的擴(kuò)展庫(kù)也可以用這樣的方式結(jié)合(除外的就是Windows平臺(tái)了)。這樣的方式
的最大的好處就是最大化的利用了cpu時(shí)和內(nèi)存,同時(shí)極為有效的利用了apache的高性
能的吞吐能力。同時(shí)外部的擴(kuò)展也是靜態(tài)連編,從而達(dá)到了最快的運(yùn)行速度。由于與數(shù)
據(jù)庫(kù)的接口也使用了這樣的方式,所以使用的是本地化的調(diào)用,這也讓數(shù)據(jù)庫(kù)發(fā)揮了最
佳效能。
3、良好的安全性。由于php本身的代碼開放所以它的代碼在許多工程師手中進(jìn)行了檢
測(cè),同時(shí)它與apache編繹在一起的方式也可以讓它具有靈活的安全設(shè)定。所以到現(xiàn)在為
止,php具有了公認(rèn)的安全性能。
弱勢(shì):
1、數(shù)據(jù)庫(kù)支持的極大變化。由于php的所有的擴(kuò)展接口都是獨(dú)立團(tuán)隊(duì)開發(fā)完成的,同時(shí)
在開發(fā)時(shí)為了形成相應(yīng)數(shù)據(jù)的個(gè)性化操作,所以php雖然支持許多數(shù)據(jù)庫(kù),可是針對(duì)每
種數(shù)據(jù)庫(kù)的開發(fā)語(yǔ)言都完全不同。這樣形成針對(duì)一種數(shù)據(jù)庫(kù)的工發(fā)工作,在數(shù)據(jù)庫(kù)進(jìn)行
升級(jí)后需要開發(fā)人員進(jìn)行幾乎全部的代碼更改工作。而為了讓應(yīng)用支持更多種的數(shù)據(jù)
庫(kù),就需要開發(fā)人員將同樣的數(shù)據(jù)庫(kù)操作使用不同的代碼寫出n種代碼庫(kù)出來,讓程序
員的工作量大大增大。
2、安裝復(fù)雜。由于php的每一種擴(kuò)充模塊并不是完全由php本身來完成,需要許多外部
的應(yīng)用庫(kù),如圖形需要gd庫(kù)、LDAP需要LDAP庫(kù)......這樣在安裝完成相應(yīng)的應(yīng)用后,再
聯(lián)編進(jìn)php中來。這也就是我以前在代碼聯(lián)盟新聞組中對(duì)網(wǎng)友所說的一定要在
FreeBSD/Linux/Unix下運(yùn)行php的原因。只有在這些環(huán)境下才能方便的編繹對(duì)應(yīng)的擴(kuò)展
庫(kù)。這些都是一般開發(fā)人員在使用php前所先要面對(duì)的問題,正是這樣的問題讓許多開
發(fā)人員轉(zhuǎn)而使用其它的開發(fā)語(yǔ)言,必竟Unix沒有哪么多的用戶。
3、缺少企業(yè)級(jí)的支持。沒有組件的支持,哪么所有的擴(kuò)充就只能依靠php開發(fā)組所給出
的接口,事實(shí)上這樣的接口還不夠多。同時(shí)難以將集群、應(yīng)用服務(wù)器這樣的特性加入到
系統(tǒng)中去。而一個(gè)大型的站點(diǎn)或是一個(gè)企業(yè)級(jí)的應(yīng)用一定需要這樣的支持的。注:在
php的4.0版本以后加入了對(duì)servlet/javabean的支持,也許這樣的支持會(huì)在以后的版本
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -