喜歡Java的人確定喜歡打字。我指的就是敲打鍵盤上的鍵。你得不斷地重複又重複。node
設計Java系統的人是個瘋子,他解決問題的方式就是,設計模式。若是你把設計模式看做是這個語言中解決問題的一種方式,那麼你會發現Java裏有許多這樣的設計模式。git
另外一方面,Sun的這些傢伙的確是費了點心思在Java規範上的,這使得它能運行在嵌入式系統上,因此這塊咱們仍是堅持在使用它。我很難相信Python或者C在個人手機桌面系統上運行。github
還有,那些個目錄又是怎麼回事?我必須得使用Eclipse,由於只有它知道怎麼跳過那1000個字長的路徑名。若是我在應用的同一個目錄下放10個類,會不會 傷害到某些人?web
C是精確的。當我用C寫程序的時候,若是搞定了,我知道它是靠譜的。它就像是用一把小刷子在畫一幅巨做。在這麼詳細的層面上寫代碼須要一種不一樣的心態。當你坐下來寫C的時候,在動手以前你就得規劃好到底怎麼寫。不然後面確定得費不少工夫去改。算法
若是你的經驗足夠豐富,內存泄露這種事就不太會找上門。它的第二特性——malloc/free老是如影隨行。你不能忘了任何一個。不然就像是忘了沖水或者關燈。你就這麼作就是了。編程
有句話說得好,若是你打算給房子上漆,一把好刷子可遠遠不夠。我猜你確定想要個大滾軸。若是讓我寫一整個應用或者系統,能不用C的話我確定不用。設計模式
C程序想要進行改動可得費老勁了。當我寫算法的時候,我知道第一遍確定是不會對的,因此我一般都先用Python寫,搞定了以後再翻譯成C的。數組
它就是個有string類的C。同時還有數組,列表,隊列等東西,你能夠用它們來實現你想要的。一言以蔽之:別想着自創新模板。這太困難了。除了這個,C++還改良了一下C,用C++你能夠寫出很是不錯的軟件。它這個額外的特性使得它能夠用於一些大型系統上,只要你們都還遵循一樣的約束的話,難度還不算太大。瀏覽器
這是個沒人喜歡的語言。不過它喜歡你。當你剛開始學習它的時候,你可能會寫出一些很是糟糕的代碼,把對象用做字典,別的對象做KEY,不過這樣也是OK的,由於這些代碼運行起來也沒有什麼問題,只要瀏覽器還支持JavaScript就好。安全
JavaScript沒有鏈接器,所以全部的代碼都共享一個命名空間,不過還好你們都知道這一點,因此還能一塊兒和諧相處。
CoffeeScirpt是一個解釋器,它將那些長得像Ruby的奇怪的語言逐行地翻譯成JavaScript。它是一個擁有全部外來語法的JavaScript——括號,方括號,額外關鍵字移除。只有代碼的基本含義還保留着。
CoffeeScirpt挺不錯的。若是你要寫不少代碼的時候,它能讓你提升至少25%的效率。你能夠一次在屏幕上看到更多行的代碼。
當你用CoffeeScript寫代碼的時候,你得時刻記住這是要生成JavaScript的。問題就在這。你得先去學習JavaScript。項目來的新人都得先學JavaScript,而後才能學CoffeeScript,最後才能去學習項目代碼。
我也但願能愛上它。我以爲我給過它機會了。它的回調讓我沒法忍受。我知道會有這麼一天,由於某個緣由,其中一個回調並無出現,而後個人應用就會堵在那一直等待。真是要了命了。
還有一點就是,它幾乎沒有內建任何東西。若是你要作某件事情,老是會有一大堆模塊來實現這個功能的。該選哪一個呢?若是出現問題了,哪一個模塊會有人來支持?
Scala是一門函數式,強類型的語言,它會編譯成JVM代碼。
我是在工做中學的Scala。有一家初創公司的生產系統用的是它,我是在後期才加入他們的。
這讓我看到了Scala醜陋的一面:類型推導。類型推薦被它用到了極致。每一個對象都有類型,不過想肯定它是什麼類型的,你得檢查不一樣分層上的好幾個文件才行。Scala也繼承了Java的文件夾的壞毛病,所以你要查找某個類型的話得進入好幾層目錄才能找到對應的那個文件。
簡而言之,Scala是極好的——對於那些最初的開發人員而言。新加入的成員爲了熟悉現有的代碼,得有一個很長的學習曲線。
Erlang也是我曾經想愛上的一位。我真的努力了。它是一門美麗的函數式語言,它能夠寫出很精緻的小模塊,它們以一種精確的方式進行通訊,你的系統能夠運行10年以上,由於它能處理未知問題,若是必要的話還會重啓,而後繼續運行。
不過它的結構太複雜了。開發彷佛要停留在伯克利發明socket的那個年代。當前時代所需的東西幾乎同樣都沒有。爲何開發一個簡單的WEB服務須要費這麼大的工夫?
Go很容易學習,對於新人而言也是如此。它使用40年前的語言概念來構建一個健壯的異步系統,但它讓你能像寫同步代碼同樣編程。你能夠不費吹灰之力寫出1000個能夠安全工做的線程。
在庫支持方面它仍須要改進。當我想作某事的時候,該用哪一個庫——github上2011年的那個,仍是2013年開始的那個半成品?一個是官方主頁連接的,不過它的官方主頁看起來並非最新的。好吧,我以爲我仍是本身寫一個吧。。。
還有,爲何追加元素到數組裏也這麼費勁?
在Python裏,無論你想作什麼都會有一個對應的庫,若是你用的是Linux,它絕對是不二選擇,由於它能夠一鍵安裝。
若是你想作些數字處理或者科學運算,選擇Python吧,你值得擁有。
Python中的字符串便可能是文本的也多是二進制的,所以你得上來就學習下文本編碼的東東。
Python 3和Python有許多共同的特性,不過它倒是門不一樣的語言。因爲它比較新,所以支持的並非很好。我也想使用它,不過總會有那麼一個庫,它是隻支持Python 2的。