Perl、PHP、Python、Ruby對於入門的Linux營運來說,哪個更易學?
來源:互聯網
上載者:User
基礎較差,剛剛入門Linux營運,希望可以學習一個用於Linux營運
回複內容:
perl太古老,寫好的代碼看起來費勁,現在基本停止進化了,雖然6搞了很多年了,還不知道什麼時候能出來,php很呆板不適合做營運,最後就在 python和ruby這兩個來抉擇,很明顯支援python的人會居多,主要可能是因為python的先發優勢,但ruby有一個優勢:一行代碼解決問題的能力(這一點繼承了perl),當年剛學perl非常驚訝於他的這樣 perl -ne 'chomp; print;' file 簡潔的連變數都不用寫(多年過去只記得這一句了),ruby很好的繼承了這一點 ruby -ne 'print $_.chomp' file ,還有比如吸收了awk的BEGIN/END,可以完全替代awk、sed、grep等命令,這裡有些例子:Ruby one-liners
,python因為必須縮排,在一行代碼解決問題的能力上面明顯不敵ruby,所以推薦Ruby。Ruby,你可以參考我寫的這本書:Chef之道 - GitBook
營運方向的常用語言目前主要是三種:Shell Scripts,Perl,Python。拋開shell不談(無論你最後選哪個,shell都是繞不過的,哪怕不精通至少也要熟練)。而在Perl與Python當中,目前的選擇當然是Python第一,除非你有很多Perl的曆史遺留需要維護。PHP與Ruby更多的是用在WEB端的開發中,在營運體系中用的不多。
Perl 與 Python 相對 PHP 與 Ruby 的優勢主要集中在現有發行版的Linux基本都內建,有極其豐富的針對營運的第三方庫,有大量的實際經驗可以借鑒。
而Python相對於Perl的優勢在於,簡單,易學,可讀性好,寫代碼的效率高,Code review與團隊間合作愉快
Python的運行效率有所薄弱,但在營運情境中,高的開發效率遠比稍慢的運行效率更重要。ruby。文法優雅 ,一致,上手比較容易,而且題主所說的linux營運方面對執行效率要求不是很高。
個人覺得python文法沒有ruby優雅,上手比ruby難一點。
python開源庫多,然而在這方面並沒有什麼卵用。ruby和python都可以Perl,誰用誰知道,就比比 one line 好了,其他那幾個能戰麼(個人經驗
ruby文法簡練優雅,但約定大於配置的“自由”思想需要學習者認同適應;
python資料結構處理方便,文法精鍊,瞭解配置就好;
php接觸不多,感覺編程思想有些混雜;
perl根本沒興趣去接觸…不會php, 就說剩下三個, 學習難度: python >> ruby > perl
對營運來說的實用程度: perl >> ruby/python 要知道很多金融行業的大牌公司, 都是一邊罵perl難用一邊打著燈籠招人來維護他們的遺留perl指令碼的.
不過這又有啥關係呢? 我知道ruby一堆缺點, 但是我還是會選ruby, 這幾個裡面也只有ruby的設計正常一些了...我用php做營運,也沒啥不行的。php+shell各種cli,各種daemon。唯一不好的是沒什麼開源的軟體用。另外b格跟不上py的。要想精通都很難。
我覺得可以根據你最急的需求,選一個相對合適的語言入手,並逐步把他吃透,搞懂。然後根據一些文檔或者書籍《xx天精通xx》,真正瞭解語言特性。
等你真的精通一門語言的時候,再去用別的語言做一些簡單的工作,就可以看看《快速入門xxx》就可以幹活了。
因為本質上說,很多程式設計語言的基礎和常見特性是可以互連的,缺失的僅僅是他們的特性而已。