- 跟C/C++/Java相比 — Python/Ruby能讓你用少的多的多的代碼寫出相同的程序。有人計算過,Python或Ruby寫出的程序的代碼行數只相當於相對應的Java代碼 的行數的五分之一。如果沒有絕對的必要,為什么要花這么多時間寫出這么多的代碼呢?而且,有人說,一個優秀的程序員能維護的代碼量最多是2萬行。這不區分 用的語言究竟是匯編,C還是Python/Ruby/PHP/Lisp。所以,如果你用Python/Ruby寫,你一個人干的,不管是干什么,如果換用 Java/C/C++,那都需要一個5人的小團隊來干。
- 跟VB/PHP比較 — 跟PHP/VB相比,Python/Ruby的是一種從設計上講比它們好的不知多少倍的語言。PHP和VB分別是在開發網站和桌面應用程序上非常流行的語 言。它們流行的原因是非常的易學。不懂計算機的人也很容易的上手。如果你用這些語言開發過大型的項目,你就會發現這些語言的設計是如此的糟糕。是朋友,他 就不會勸你使用PHP/VB。
- 跟Lisp/Scala/Haskell/Closure/Erlang相比 — Python/Ruby跟它們比起來顯得相當的“主流”。確實,這些語言每種都有其很酷的特征,對於高級編程人員,了解這些語言能給他們對編程的思考帶來 實際的提升。但這些應該在你以后的職業生涯中才去決定學哪一兩種。對於現在,Python/Ruby是在語言功能和實際運用之間平衡后的更好的選擇。
- 跟Perl相比 — Python和Ruby都受恩於Perl,在這兩種語言異軍突起前,Perl是最好、最大的一種動態語言。但現在,Perl已是明日黃花,越來越多的人轉 向Ruby/Python。我感覺Perl的面向對象機制有點做作,很不好用。通常認為,Perl一種比較難學的語言,因為它提供你了太多不同的方法去完 成同一個任務,它的語法有點像密碼,非常不直觀 — 除非你對它掌握的非常好。總之,我感覺Perl是一種對於學生來說不是很合適的語言—除非你有特殊的理由去學它(例如,你有很多正則表達式要處理,這是 Perl的閃光點)。
跟sh/sed/awk/bash相比 — 如果你使用Linux/Unix,你可能需要做一些shell編程,甚至會編寫一些不小的程序。但是,對於這些語言,一旦程序達到一定的行數,事情就會開 始變得讓你痛苦不堪,你最好是用Python去做這些事情。當然,做這種事情,Perl是最好的選擇,Python排第二。(Ruby對於系統shell 腳本不是很合適)
