1. 程式人生 > >Perl,Python,Ruby,Javascript 四種指令碼語言比較

Perl,Python,Ruby,Javascript 四種指令碼語言比較

為了選擇一個合適的指令碼語言學習,今天查了不少有關Perl,Python,Ruby,Javascript的東西,可是發現各大陣營的人都在吹捧自己喜歡的語言,不過最沒有爭議的應該是Javascript現階段還不適合用來做獨立開發,它的天下還是在web應用上。

我 主要是想做資料探勘演算法的研究,應該會處理大量的文字。提到文字處理,相信大部分人都會說應該用Perl。的確,Perl的文字處理很強大,但是它的語法 給人的感覺太亂了,我之前把Perl的基本語法學完了,也用它做了一些簡單的文字處理工作,但是到現在,用起來還是不那麼順手。貌似在Unix或 Linux上做系統管理Perl是最好的選擇。

Python據說吸收了Perl的一些東西,其非常特別的一點應該是它的語法非常規範吧,寫出來的程式一定是格式優美的,由於自己沒有研究過,也不知道它到底適合用來做什麼,摘抄了下面的特點:

  • 面向物件的指令碼語言
  • 自由的,可移植的,功能強大的,可以與其它語言混合程式設計
  • 系統軟體的指令碼
  • 圖形使用者介面,可以開發圖形介面
  • 元件整合,支援COM、JAVA
  • 快速原型
  • Internet指令碼
  • 影象處理、人工智慧、分散式物件
  • RedHat公司的Linxu安裝工具使用Python
  • MS公司曾發不過部分使用Python寫的程式
  • Yahoo!在大量Internet服務中使用Python
  • 美國國家宇航局把Python使用者任務控制系統的實現
  • 製作《侏羅紀公園》的Industrial Light and Magic公司用Python生成標誌的商業動畫。

Ruby,我是在為一個公司做RoR開發的時候剛接觸的,我只做了一個簡單的模組,由於時間上的原因沒有繼續參與專案,因此對Ruby也是停留在懂基本語 法的階段,不過它給我的印象不錯。也許是因為它相比以上兩個語言來說是最新的吧,應該吸收了不少前輩身上的優點,容易上手,功能也很強大。

查了半天資料眼睛都看花了,還是弄得我不知道選擇哪個好。當然,每個都學點不是問題,可我現在是想找一個作為重點研究物件,要達到精通的程度。

實在沒辦法,我在搜尋引擎裡進行了實驗,看現在哪個語言的技術人員需求量大:

在google中搜索關鍵詞“XXX招聘”:

  • 約有540,000項符合Perl招聘
  • 約有500,000項符合Python招聘
  • 約有515,000項符合Ruby招聘
  • 約有1,280,000項符合javascript招聘

在baidu中搜索關鍵詞“XXX招聘”:

  • Perl招聘:找到相關網頁約534,000篇
  • Python招聘: 找到相關網頁約338,000篇
  • Ruby招聘:找到相關網頁約400,000篇
  • Javascript招聘: 找到相關網頁約2,390,000篇

儘管javascript的需求量最大,但不適合我要做的工作,故不考慮。

其 他三種語言,在google和baidu中的分部基本一致,Perl最多,Ruby居中,Python最少;考慮到語言出現的先後會對其技術需求產生影 響,Perl是最古老的,Python居中,Ruby最年輕;再考慮到語言本身的語法特點,Perl最晦澀,Python和Ruby都比較整潔。

綜合考慮,我偏向於深入學習Ruby。

那就這樣吧,畢竟不是什麼生死決策,沒必要反覆猶豫。語言本身沒有優劣之分,關鍵在於應用這門語言的人對它的熟練程度。就像一個牛人說的:“我用純C語言照樣寫出完美的OO程式”。