再談Web開(kāi)發(fā):PHP,Java和.NET的過(guò)去,現(xiàn)在和未來(lái)
譯文【51CTO精選譯文】PHP,Java和.NET已經(jīng)成為了未來(lái)五年內(nèi)程序員必須具備的技能,而這三種語(yǔ)言(或者可以稱之為平臺(tái))都在Web開(kāi)發(fā)領(lǐng)域占有一席之地。當(dāng)然,Web開(kāi)發(fā)領(lǐng)域還有其他很多選擇,比如Ruby,Python以及RIA技術(shù)等等。不過(guò),單獨(dú)將這三種主流的開(kāi)發(fā)平臺(tái)進(jìn)行比較(在***的9月編程語(yǔ)言排行榜上,Java、PHP、Visual Basic和C#分別處于第1、3、5、7名的位置。當(dāng)然,排行榜所統(tǒng)計(jì)的領(lǐng)域不限于Web開(kāi)發(fā)),也是有一定價(jià)值的。下面的這篇博文對(duì)于PHP,Java和.NET在Web開(kāi)發(fā)領(lǐng)域的競(jìng)爭(zhēng)性進(jìn)行了一番探討,文章有其主觀片面之處,不過(guò)其中關(guān)于三種平臺(tái)特點(diǎn)的比較還是很有趣的。以下是博文的原文:
昨天我和我的一位朋友對(duì)Web編程語(yǔ)言進(jìn)行了一翻討論,在此期間,我們討論了各種編程語(yǔ)言(PHP,Java,VB和C#)以及它們?cè)?A >Web開(kāi)發(fā)方面的競(jìng)爭(zhēng)性。由于這個(gè)主題非常有趣,而且值得商榷,有必要對(duì)此做一下總結(jié)。
PHP:過(guò)去,現(xiàn)在和未來(lái)
首先我還是從我熟悉的PHP開(kāi)始,它是我最喜歡的Web腳本語(yǔ)言,早在1998年,當(dāng)我***次接觸PHP時(shí),我就知道已經(jīng)有許多高手開(kāi)始使用PHP做有趣的事情,如搜索引擎優(yōu)化。PHP的名字表示PHP超文本處理器,在當(dāng)年來(lái)說(shuō)雖然是一門樸素的語(yǔ)言,但功能還是蠻強(qiáng)大的。我一直認(rèn)為PHP總有一天會(huì)發(fā)展成為一個(gè)應(yīng)用程序開(kāi)發(fā)語(yǔ)言(如今天的Java和C#)。幸運(yùn)的是,現(xiàn)在我們可以看到ZendServer,PHP 5,Zend Framework和PHP-GTK。一個(gè)好的企業(yè)解決方案僅僅利用前面列出的工具在性能、穩(wěn)定性和生產(chǎn)速度方面就可以輕松擊敗其它應(yīng)用程序,雖然這些工具在商業(yè)層面還未被人們充分知曉,但據(jù)我所知,在許多學(xué)術(shù)會(huì)議上都會(huì)介紹它們,我相信在不久的將來(lái),在商業(yè)環(huán)境中也會(huì)看到它們的身影。
關(guān)于社區(qū)參與,PHP在過(guò)去兩年已經(jīng)取得了巨大的進(jìn)步。早在2003-2004年,許多程序員都轉(zhuǎn)向了JSP,放棄了成熟、穩(wěn)定的PHP框架,我差點(diǎn)也成為其中一員,當(dāng)時(shí)我一致堅(jiān)持使用PHP,工作了將近4個(gè)月,***誕生了我的***套用于快速網(wǎng)站應(yīng)用開(kāi)發(fā)的PHP組件。***,我將我的模塊移到CakePHP和Zend Framework中,聯(lián)合它們的力量可以應(yīng)付高流量的網(wǎng)站,***峰值達(dá)到了上萬(wàn)個(gè)請(qǐng)求/小時(shí),但CPU利用率一直保持在10%,內(nèi)存1GB左右。
一個(gè)非常簡(jiǎn)單但很有說(shuō)服力的例子是我開(kāi)發(fā)的兩個(gè)網(wǎng)站:www.yellowpages.com.lb和www.al-sharq.com,出于商業(yè)機(jī)密的原因,我不能在這里透露具體的數(shù)目。你可以訪問(wèn)這些網(wǎng)站,獲得結(jié)合了Linux、MySQL、APC和Zend Framework的有關(guān)PHP的性能。
Java:企業(yè)級(jí)編程語(yǔ)言
Java功能強(qiáng)大,資源占用高,但服務(wù)器端資源利用率高,一個(gè)用JSP開(kāi)發(fā)的網(wǎng)站一般至少需要2GB內(nèi)存來(lái)緩存JSP文件,但它的性能比其它編程語(yǔ)言要好,一般來(lái)說(shuō)一臺(tái)服務(wù)器上不能容下50個(gè)網(wǎng)站,除非有8GB內(nèi)存專門用于JSP容器。
Visual Basic:再見(jiàn)!
Visual Basic現(xiàn)在用的人越來(lái)越少,信不信由你,有可能到2015年就不存在了,微軟在未來(lái)幾年重點(diǎn)主要放在C#上,雖然它仍然用在操作系統(tǒng)層,但我看不出有任何理由程序員會(huì)繼續(xù)使用它,除非像我那位朋友那樣堅(jiān)持認(rèn)為Visual Basic是最簡(jiǎn)單的,因?yàn)樗麄儜械迷賹W(xué)習(xí)另一門語(yǔ)言了。(對(duì)于Visual Basic的前景,雖然本文作者表示悲觀,但很多開(kāi)發(fā)者都持相反的意見(jiàn)。幾個(gè)月前更新的Visual Studio 2010與.NET 4.0的beta版中,VB.NET和C#都得到了更新,具體可以參考51CTO之前發(fā)布的VS2010中兩種語(yǔ)言特性的介紹和比對(duì)一文。)
C#:微軟的賭注!
微軟的C#汲取了Visual Basic,Java和PHP等多種語(yǔ)言的優(yōu)點(diǎn),具有Java語(yǔ)言的強(qiáng)大,Visual Basic的簡(jiǎn)單,PHP的低起點(diǎn)。雖然我算不上是C#專家,但我最近為一位客戶測(cè)試了一套用C#開(kāi)發(fā)的Web應(yīng)用程序,結(jié)果讓我大吃一驚,在安全方面C#引入了很多安全特性(特別是異常),在性能方面表現(xiàn)也令人滿意,服務(wù)器每秒處理1024個(gè)請(qǐng)求將近兩分鐘才崩潰。通過(guò)測(cè)試,我對(duì)C#在運(yùn)行時(shí)對(duì)異常的處理有更深的認(rèn)識(shí),并且程序員可以通過(guò)IIS的幫助對(duì)應(yīng)用程序進(jìn)行調(diào)整。微軟未來(lái)幾年肯定會(huì)將重心放在推廣C#上,并希望能達(dá)到Visual Basic曾經(jīng)創(chuàng)造的***。
總結(jié)
如果你剛剛接觸編程,并想往網(wǎng)站開(kāi)發(fā)方向發(fā)展,那么PHP非常適合你。
如果你喜歡微軟,那么學(xué)習(xí)C#。
如果你想進(jìn)入企業(yè)級(jí)編程,那么學(xué)習(xí)Java吧。
(51CTO編者注:當(dāng)然,上面的建議只是作者一家之言,限于此文的討論范圍,只比較了PHP,Java和.NET。其實(shí)網(wǎng)站開(kāi)發(fā)還可以考慮Ruby或Python,喜歡微軟也可以嘗試F#,而企業(yè)級(jí)編程這塊,就算只探討Java平臺(tái),還有Scala這樣優(yōu)秀的替代者可以考慮。建議讀者們不妨多試試各種語(yǔ)言,了解一下各種語(yǔ)言的特點(diǎn),再按照自己的需求來(lái)進(jìn)行選擇。)
原文:THE FUTURE OF WEB PROGRAMMING
作者:victor
【編輯推薦】
























