未來屬於動態語言

 From: http://www.cnblogs.com/dujun0618/archive/2008/02/21/1076040.html

 

    在今天這個信息氾濫的時代,身爲開發者,眼光比技術更重要。缺乏眼光的人,着眼於小,爲細枝末節的所謂“創新”不惜肝腦塗地,赴湯蹈火,而面臨真正變革時,或坐井觀天,守舊拒新,或畏畏縮縮,裹足不前。具備眼光的人,着眼於大,平時穩紮穩打,不爲世間紛擾所擾,一旦時機出現,則能拋卻門戶之見,枝節之爭,以過人氣概投身變革,成就自己的事業。這前後兩者的差距之大,其實全在於對大趨勢的把握上。
                 
  回顧IT技術不長的歷史,我們會發現,每當重大變革發生的時候,在技術圈子裏總是存在激烈的爭論,總有那些着眼於小的人站在細枝末節上對技術變革本身表示質疑甚至否定。
  當關系數據庫和SQL語言把數據管理的繁瑣工作從開發者和操作者身上解放出來的時候,有人抨擊關係數據庫性能低下;當微軟開始用C語言開發PC應用程序時,彙編語言的擁護者輕蔑的說,只有彙編語言才能發揮PC機的全部能力;當Web進軍企業計算時,一大批專家跑出來抨擊HTML界面的呆板和HTTP協議的緩慢和幼稚。然而,所有這一切抱怨、質疑和信誓旦旦的否定,都被技術發展的大潮無情的吞噬,消失得無影無蹤。原因很簡單,所有這些聲音,都是着眼於小,着眼於私,一葉障目,而不見IT技術發展的大勢。IT技術發展的大趨勢永遠都是要更快,更簡單。
                 
  從這個角度來看待動態語言,結論就異常的情繫。在今天這個時代、動態語言代表着更快更簡單的技術大趨勢,因此它將必然成爲未來構建軟件和互聯網技術的主角。回顧2006年國內外動態語言的發展歷程,也恰恰能夠印證這一點。
                 
  Ruby:發現寶藏Ruby的意思是“紅寶石”,就是那種能發出激光的石頭。而Ruby on Rails則是剛從礦裏挖出來、還躺在鐵軌上的翻斗車裏、沒來得及運出去的、能發出激光的紅石頭。要是我站在礦井口,看看陽光下紅彤彤的一堆,再看看黑乎乎的洞口,我一定會貪婪地想,好傢伙,那洞口裏面還有多少這樣的寶貝!我不知道David Heinemeier Hansson是不是有意爲之,但是他給自己發明的那個輕量級的Web開發框架命名爲Ruby on Rails,無論如何帶有隱喻的意味。
  如果說2005年人們發現了Rails,那麼在2006年,人們通過Rails發現了Ruby寶藏。當Rails剛剛火起來的時候,很多人覺得不過是Rails有個好想法,在其他語言裏同樣能做到。但是經過一段時間的模仿之後,才發現根本不是這麼回事。構造類似Rails那樣的框架就算不是不可能,也是非常困難。再看到Rails社羣風氣雲涌,Rails發展一日千里,連競爭的心都沒有了。最後人們不得不承認,Rails的威力很大程度上來自Ruby.於是在2006年,我們看到整個Ruby社羣開始快速的發展。
                 
  首先是越來越多的旗幟性任務轉向Ruby.除了前幾年就已經大量使用Ruby的鮑勃大叔Rober t C. Martin,ThoughtWorks以Martin Fowler爲首的面向對象大師們今年也開始在公開場合宣傳Ruby.《編程珠璣》作者Jon Bentley,Lisp元老Paul Graham、C++網絡編程領袖St eve Vinoski等資深專家嘗試Ruby以後也讚不絕口。著名的J2EE技術專家Brute Tate更是乾脆就直接號召企業轉向Ruby.就連一直挺Python反Ruby的Think in系列作者Bruce Eckel也改變態度,開始研究Ruby.老牌的Ruby專家如Dave Thomas、Andy Hunt、Chad Fowler、Ha l Fulton、David Black今年也非常勤奮的工作,在他們的帶動下越來越多的高水平程序員轉向了Ruby.
                 
  不過在Ruby社羣裏還是年輕人打天下。David H. Hasson還是地球上最炙手可熱的黑客,Ge offrey Grosenbach緊隨其後,來自ThoughtWorks的Obie Fernandez正在幫助Addison Wesley主編一套高質量的Ruby圖書,而另一個叫做Mauricio Fernandez的傢伙在不長的時間裏貢獻了一大堆讓人驚歎的東西,用200多行Ruby代碼編寫了一個全文搜索引擎,雖然簡單,但是跑起來飛快。比DHH還年輕的Ola Bini一加入JRuby開發組就幾乎重寫了語法分析器。正是這些新生代高手掀起了Ruby的創新大潮,也推動了Ruby的快速發展。截至2006年底,Ruby在TIOBE全球編程語言排行榜上激進9位,位列第11名。
                 
  Ruby的快速發展當然引起了大公司的關注。Sun聘請了JRuby開發團隊,Microsoft聘請了Ru byCLR開發者,IBM直接推出整合了Ruby on Rails的DB2 Express-C,種種跡象表明,Ruby即將走向前臺。
                 
  然而,Ruby也有脆弱的一面。其解釋器實現得相當簡陋,“十五年來所有的虛擬機新技術一概沒有包括”。同時,其核心代碼又過於複雜,很少有人能夠參與到Ruby核心的開發之中。其結果是,Ruby幾乎是當前流行語言中速度最慢的一種,而且還很難改進。年中圍繞J oel Spoky的一篇文章,掀起了對Ruby執行效率的大討論。其結果是,Ruby社羣一方面有力的反擊了對Ruby的攻擊,另一方面也深刻認識到,語言基礎設施是Ruby的軟肋。因此,臨近年底的時候,Ruby社羣掀起了建設Ruby基礎設施的討論。包括YARV和Rubinius的新一代R uby虛擬機都在建設當中,而將Ruby移植到JVM、CLR、Parrot和Strongtalk的努力也已經付諸實施。
                 
  Ruby社羣已經比兩年前壯大了很多倍,人們完成了大量的工作,但是積蓄的力量更令人期待。我們可以相信,Ruby有一個光明的未來。
                 
  Python & PHP:穩步向前Ruby的高速發展持續了兩年,但是至少到現在爲止,其真實地位與Python和PHP相比,還相距甚遠。事實上,2006年的Python和PHP雖然沒有Ruby那麼引人矚目,但是它們也在紮紮實實地進步。
                 
  Python今年推出2.5版本,並且給Python3.0(之前叫做Python 3000)最後確立了時間表,。整個Python社羣已經十分成熟,對於Python的發展方向和發展過程形成了高度的一致。P ython的語言基礎設施也非常成熟,性能上的優化工作已經相當充分,整個社羣穩步向前,透射出成熟、自信和智慧。
                 
  在企業領域,Python實際上走的遠比Ruby快。由於Google、NASA等大型組織大量使用Pytho n,並取得了良好的效果。更多的企業開始從Perl向Python轉移。基於Python的輕量級Web開發框架Django,已經被應用在很多企業的內部管理系統之中。然而這一切都似乎是悄悄進行的,沒有Ruby的鑼鼓喧天。也許Python的氣質就是平靜如水。
                 
  微軟以開源的形式推出了IronPython,不久之後又推出了IronPython for ASP.NET.這不但對於Python社羣是個大事件,對於。NET社羣同樣是大事件。是否IronPython能夠掀起。NE T動態語言時代?微軟會怎樣對待這個親生的外姓子?且拭目以待。
                 
  對於Python社羣來說,今年的進步其實是可喜可賀的。但是在輿論上,Python今年完全被R uby壓倒。儘管Python社羣似乎更喜歡踏踏實實、悶頭前進,對於Ruby的挑戰基本上不予迴應。但是坦率地說,長期下去,局面對Python會變得不利。
                 
  相反,PHP社羣面對挑戰的反應就比較激烈了。PHP已經以自己的成熟、直接、高效稱謂公共互聯網上最流行的Web開發語言。在2006年,這個優勢還在擴大之中。就衝這一點,PHP也足以笑傲江湖了。但是,由於PHP最初設計上的過分簡單,在“意識形態”領域,PHP一直被認爲是進取空間不大的語言。在過去的幾年裏,PHP的核心開發者們在極力改變這種形象,他們給PHP5加入了面向對象機制,也開發了一系列大型的框架設施。但是,主流的PHP開發者似乎並不關心這些,仍然繼續用最質樸的方式開發一個個穩定高效的站點。這究竟是PHP之福,還是蘊含着潛在的危機?只有時間能告訴我們。
                 
  其他語言最老牌的動態語言Perl,至今仍然在使用率上遙遙領先,但是由於Perl 6發展的不力,以及Perl本身比較難以維護的缺陷,Perl的發展基本上處於停滯狀態。在論壇上,人們還是關心Perl6什麼時候能夠出來,給Perl的明天帶來亮色。
  Perl的情況多少讓人有點慨嘆,然而與之相比,JavaScript的“鹹魚翻身”則令人大跌眼鏡。JavaScript以及其變體ActionScript家族很有可能將成爲最流行的動態語言。事實上,JavaScript的語言設計、基礎設施和工具存在一些不足,使用的人很多,但是喜歡這一語言族系的人則相對很少。但是不論是否討人喜歡,JavaScript卻註定流行,原因很簡單,因爲瀏覽器能夠執行JavaScript,而PC端瀏覽器的普及率接近100%,這是Java、。NET無法相比的。AJAX的興起給JavaScript帶來了大發展的機遇,而Flash平臺又選擇了ActionSc ript作爲腳本語言,種種利好,使得JavaScript成爲當前最炙手可熱的技術之一。預期在未來的兩年之內,這種局面會繼續。
                 
  結語與前幾年不同,2005-2006年的技術大事幾乎都圍繞動態語言發生,從AJAX的興起到Ruby on Rails的爆發,從Web服務到大型服務器農莊管理,到處都閃着動態語言的身影。技術大趨勢已經非常明晰,規律註定再次發生效力。正如一位著名技術博客所說,未來屬於動態解釋性語言,對於所有的開發者來

發佈了2 篇原創文章 · 獲贊 0 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章