主頁(yè) > 知識(shí)庫(kù) > 每個(gè)程序員都應(yīng)該學(xué)習(xí)使用Python或Ruby

每個(gè)程序員都應(yīng)該學(xué)習(xí)使用Python或Ruby

熱門標(biāo)簽:南召400電話辦理資費(fèi) 地圖標(biāo)注審核工作怎么樣注冊(cè) 去哪里辦卡 無(wú)錫電銷機(jī)器人銷售 招聘信息 鄭州中國(guó)移動(dòng)400電話申請(qǐng) 福建ai電銷機(jī)器人加盟公司 地圖標(biāo)注植物名稱 熱血傳奇沃瑪森林地圖標(biāo)注 揭陽(yáng)外呼系統(tǒng)公司

如果你是個(gè)學(xué)生,你應(yīng)該會(huì)C,C++和Java。還會(huì)一些VB,或C#/.NET。多少你還可能開(kāi)發(fā)過(guò)一些Web網(wǎng)頁(yè),你知道一些HTML,CSS和JavaScript知識(shí)??傮w上說(shuō),我們很難發(fā)現(xiàn)會(huì)有學(xué)生顯露出掌握超出這幾種語(yǔ)言范圍外的語(yǔ)言的才能。這真讓人遺憾,因?yàn)檫€有很多種編程語(yǔ)言,它們能讓你成為一個(gè)更好的程序員。

在這篇文章里,我將會(huì)告訴你,為什么你一定要學(xué)習(xí)Python或Ruby語(yǔ)言。

跟C/C++/Java相比 — Python/Ruby能讓你用少的多的多的代碼寫出相同的程序。有人計(jì)算過(guò),Python或Ruby寫出的程序的代碼行數(shù)只相當(dāng)于相對(duì)應(yīng)的Java代碼的行數(shù)的五分之一。如果沒(méi)有絕對(duì)的必要,為什么要花這么多時(shí)間寫出這么多的代碼呢?而且,有人說(shuō),一個(gè)優(yōu)秀的程序員能維護(hù)的代碼量最多是2萬(wàn)行。這不區(qū)分用的語(yǔ)言究竟是匯編,C還是Python/Ruby/PHP/Lisp。所以,如果你用Python/Ruby寫,你一個(gè)人干的,不管是干什么,如果換用Java/C/C++,那都需要一個(gè)5人的小團(tuán)隊(duì)來(lái)干。

跟VB/PHP比較 — 跟PHP/VB相比,Python/Ruby的是一種從設(shè)計(jì)上講比它們好的不知多少倍的語(yǔ)言。PHP和VB分別是在開(kāi)發(fā)網(wǎng)站和桌面應(yīng)用程序上非常流行的語(yǔ)言。它們流行的原因是非常的易學(xué)。不懂計(jì)算機(jī)的人也很容易的上手。如果你用這些語(yǔ)言開(kāi)發(fā)過(guò)大型的項(xiàng)目,你就會(huì)發(fā)現(xiàn)這些語(yǔ)言的設(shè)計(jì)是如此的糟糕。是朋友,他就不會(huì)勸你使用PHP/VB。

跟Lisp/Scala/Haskell/Closure/Erlang相比 — Python/Ruby跟它們比起來(lái)顯得相當(dāng)?shù)摹爸髁鳌?。確實(shí),這些語(yǔ)言每種都有其很酷的特征,對(duì)于高級(jí)編程人員,了解這些語(yǔ)言能給他們對(duì)編程的思考帶來(lái)實(shí)際的提升。但這些應(yīng)該在你以后的職業(yè)生涯中才去決定學(xué)哪一兩種。對(duì)于現(xiàn)在,Python/Ruby是在語(yǔ)言功能和實(shí)際運(yùn)用之間平衡后的更好的選擇。

跟Perl相比 — Python和Ruby都受恩于Perl,在這兩種語(yǔ)言異軍突起前,Perl是最好、最大的一種動(dòng)態(tài)語(yǔ)言。但現(xiàn)在,Perl已是明日黃花,越來(lái)越多的人轉(zhuǎn)向Ruby/Python。我感覺(jué)Perl的面向?qū)ο髾C(jī)制有點(diǎn)做作,很不好用。通常認(rèn)為,Perl一種比較難學(xué)的語(yǔ)言,因?yàn)樗峁┠懔颂嗖煌姆椒ㄈネ瓿赏粋€(gè)任務(wù),它的語(yǔ)法有點(diǎn)像密碼,非常不直觀 — 除非你對(duì)它掌握的非常好。總之,我感覺(jué)Perl是一種對(duì)于學(xué)生來(lái)說(shuō)不是很合適的語(yǔ)言—除非你有特殊的理由去學(xué)它(例如,你有很多正則表達(dá)式要處理,這是Perl的閃光點(diǎn))。

跟sh/sed/awk/bash相比 — 如果你使用Linux/Unix,你可能需要做一些shell編程,甚至?xí)帉懸恍┎恍〉某绦?。但是,?duì)于這些語(yǔ)言,一旦程序達(dá)到一定的行數(shù),事情就會(huì)開(kāi)始變得讓你痛苦不堪,你最好是用Python去做這些事情。當(dāng)然,做這種事情,Perl是最好的選擇,Python排第二。(Ruby對(duì)于系統(tǒng)shell腳本不是很合適)。

你可以在Google上搜一下“為什么X比Y好” — 其中把X換成Python或Ruby,把Y換成另外一種語(yǔ)言 — 你就會(huì)發(fā)現(xiàn),有無(wú)數(shù)的文章來(lái)說(shuō)明它們?yōu)槭裁催@么好。

如果你有選擇你的畢業(yè)設(shè)計(jì)使用的編程語(yǔ)言的自由,你應(yīng)該選擇Python或Ruby,它們能讓你在開(kāi)發(fā)項(xiàng)目的過(guò)程中節(jié)省一半的時(shí)間(除非你要開(kāi)發(fā)的是移動(dòng)應(yīng)用,這樣你必須要使用Java或Objective-C)。

下面是xkcd上的一幅漫畫,告訴你掌握Python后你會(huì)變得多么的強(qiáng)大:

如何去學(xué)它們呢?很多很多的網(wǎng)站上都提供了學(xué)習(xí)Python和Ruby的教材和課程。下面的是我從中選出的一些:

谷歌的Python課程,學(xué)習(xí)Python的好資源。
RubyLearning,學(xué)習(xí)Ruby的一個(gè)好網(wǎng)站。

有疑問(wèn)嗎?請(qǐng)?jiān)谠u(píng)論了寫出來(lái),我會(huì)盡量回答你們。

尾注:

1:我的這篇文章可能會(huì)讓很多Perl愛(ài)好者很郁悶,現(xiàn)在回味一下,我認(rèn)識(shí)到對(duì)這種語(yǔ)言的要求過(guò)于苛刻了。因此,我把關(guān)于Perl的一節(jié)改寫了一下。

Python和Ruby都受恩于Perl,在這兩種語(yǔ)言出現(xiàn)之前,Perl是最大、最好的動(dòng)態(tài)語(yǔ)言。但Perl現(xiàn)在太老了。它的面向?qū)ο笮圆煌暾K芫脹](méi)有升級(jí)更新了,它的市場(chǎng)份額正在丟失。對(duì)于一些新的、很火的事物(例如Web編程框架,Web API),它不如Python Ruby 那樣能跟上時(shí)代的步伐?;旧希琍ython/Ruby在興起,Perl在衰退。

2:本文中的所有語(yǔ)言的比較都是用來(lái)給印度計(jì)算機(jī)科學(xué)專業(yè)的學(xué)生選編程語(yǔ)言時(shí)做參考的。像“X比Y好”這樣的句子準(zhǔn)確的講是毫無(wú)意義的,因?yàn)樗械恼Z(yǔ)言都是經(jīng)過(guò)時(shí)間的考驗(yàn)而存活下來(lái)的,有些語(yǔ)言會(huì)在某些領(lǐng)域比另外一種要強(qiáng),這也是它們存活下來(lái)的原因。換句話說(shuō),總有一些情況下,PHP/Java/C/C++/Perl 看起來(lái)會(huì)比 Ruby/Python 等其它語(yǔ)言顯的更適合。

您可能感興趣的文章:
  • Ruby對(duì)比Python的優(yōu)勢(shì)和劣勢(shì)
  • 學(xué)編程選什么語(yǔ)言好?是PHP、Python還是Ruby?
  • Python和Ruby中each循環(huán)引用變量問(wèn)題(一個(gè)隱秘BUG?)
  • python和ruby,我選誰(shuí)?

標(biāo)簽:南昌 文山 鹽城 東莞 景德鎮(zhèn) 宣城 桂林 黔南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《每個(gè)程序員都應(yīng)該學(xué)習(xí)使用Python或Ruby》,本文關(guān)鍵詞  每個(gè),程序員,都,應(yīng)該,學(xué)習(xí),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《每個(gè)程序員都應(yīng)該學(xué)習(xí)使用Python或Ruby》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于每個(gè)程序員都應(yīng)該學(xué)習(xí)使用Python或Ruby的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章