轉換語言的成本通常很高,所以一年之內,各個語言通常不會有太大的興衰變化,這篇文章其實是描述以2008為中心,前後數年期間各類編程語言的整體狀況。 |
農曆新年前,許多大師或老師會對名人、股市、甚至國家的運勢做出各種分析,這倒是讓我靈光乍現,想利用這段時間概略地分析今年編程語言的可能發展。 Java類語言:Java似乎會逐漸走下坡。J2ME會受到Google Android、Adobe Flash Lite、.NET Compact Framework的影響;J2SE的對手則是.NET和AIR;J2EE在中小型網站受到PHP、Ruby-on-Rails(RoR)很大的衝擊。幸好,目前大型企業好像還是買J2EE的帳。 在J2ME和J2SE方面,未來似乎可以用JavaFX奮力一搏;在J2EE方面,也有Groovy/Grails可以抵擋RoR。尤其目前大家懷疑PHP和RoR只適合用在中小型網站,大型企業網站似乎還是用J2EE比較安心,Groovy/Grails可以保障大家在J2EE上既有的投資。如果你是Java愛好者,最近有點想改用RoR,那麼你可以去看看Grails,或許你會因此想繼續留在Java陣營。 PHP語言:因為PHP對初學者相當友善,所以過去這幾年使用者數量增加快速,但是似乎已經到達瓶頸,這可能是RoR造成的。隨著RoR推出新版,PHP會受到更大的挑戰。連開發工具廠商CodeGear都在2007年推出Ruby和PHP的開發工具,顯見這兩個語言似乎都會逐漸走入企業市場。 Python語言:Python早就移植到.NET和Java,2008年會持續推出修訂版本,而且也會推出全新的Python 3000。Python 3000不以相容於2.x版為目的,而是要運用過去培養出來的經驗,徹底翻新Python。目前Python編程員的需求也已經超越Perl。 Perl語言:目標遠大是一件好事,但目標遠大卻沒有足夠的資源可以完成目標,就會陷入絕境。Perl 6就是這樣的例子,它比.NET更早提出,但這幾年下來,.NET已經從1.0進入到3.5,Perl 6卻連1.0都還沒誕生。Perl擅長文字資料處理,但是在大部分語言都支援Regular Expression,加上文字資料大量XML化之後,Perl的優勢已經消失大半。 Ruby語言:Ruby可能會在2008年推出2.0,加上2007年底已經推出的RoR 2.0, Ruby整個就是一股擋不住的氣勢。可能在2008年底之前,Ruby在TIOBE的排行榜上就會超越Perl,只剩下Python和PHP這兩個對手了。 JavaScript語言:Web應用蔚為主流,而JavaScript又是瀏覽器的標準語言,所以這幾年來相當受到重視。在Adobe推出AIR,Mozilla推出Prism之後,JavaScript可以開發出「某些種類」的桌面應用,JavaScript的用途變得更廣。而JavaScript的兄弟ActionScript,隨著AIR的推出又會更受歡迎一些,但是Silverlight的推出,又會抵銷ActionScript成長力道。 C語言:系統語言方面,C語言的地位還是一樣重要,C++則會慢慢走下坡;D語言崛起,將會接收相當多原來C++的使用者,而Delphi則是一蹶不振,當年Delphi/Kylix跨Windows/Linux的美夢已然消失。 D語言:多年來,D語言平均一個月推出兩個版本,改版速度相當快,在2007年1月推出1.0版後,不出幾個月,又推出2.0版。1.0版持續做bug修訂,盡量不加新特色,2.0版則繼續進行實驗性的翻修。雖然D語言1.0才正式推出1年,但已經成為相當受歡迎的系統語言,可惜至今仍然沒有很好用的IDE。 Lua、PowerShell、Erlang語言:可說是未來幾年竄升力道最強的潛力之星,但都還不至於成為主流語言。Lua是相當小的語言,適合嵌入其他的環境中,和其他語言一同使用,根據TIOBE開發語言排行榜資料顯示,這幾年Lua越來越受到重視,尤其2007年Lua更是往上猛竄二十幾個名次,由此可見Lua的需求大增。隨著Windows Vista系統的出貨,未來幾年PowerShell會成為相當重要的系統管理語言。目前的多核心環境、網路分散式運算、容錯的需求,則讓Erlang持續受到重視。 Roughly Drafted Magazine的報導指出,在2007年第三季,Apple iPhone在美國的Smartphone市場占有率已經到達27%,超過Windows Mobile。繼美洲和歐洲之後,2008年iPhone會在亞洲開始販售,並推出第二代機種,也預計在2008年推出SDK(軟體開發套件),讓我們可以為iPhone寫原生(Native)程式。 所以,如果你需要為Smartphone開發應用,除了考慮Windows Mobile之外,你也必須思考是否要用Objective-C語言開發的MacOS應用了(iPhone使用精簡版的MacOS X)。 轉換語言的成本通常很高,所以一年之內,各個語言通常不會有太大的興衰變化,這篇文章其實是描述以2008為中心,前後數年期間各類編程語言的整體狀況;把時間拉長,發展態勢會比較明顯,不受到短期震盪的影響,預測未來就不至於太過離譜,讓大家當作未來選擇語言的參考。 |
From: http://www.ithome.com.tw/itadm/article.php?c=47320