【51CTO.com快譯】不可否認,想要成為一名優(yōu)秀的程序員確實是需要掌握多種編程語言。通過這幾年的自虐式學習,我也慢慢的掌握了這些編程語言。鬼知道這過程多么痛苦,但也因為它們,我會獲得比別人更多的機會。接下來要為大家,介紹七款讓我又愛又恨的編程語言! 寫這篇文章的原因: 1.給新人學習編程語言的一些建議。 2.因為它們確實,能讓我們賺更多的錢。(我就是那么俗!) 3.我要吐槽他們?。。。。。。ㄎ艺娴姆浅烂C....) (申明:大家可以當娛樂看一下,對一些細節(jié)也希望大家不要過于較真!) 1.C語言 難度系數:5星 吐槽系數:4星 推薦指數:4星 C語言給我的感覺,就是一位神秘莫測而又高冷型的女生形象。這是因為c語言相比其他編程語言難度高一些,這也就多了一絲神秘,每當我以為我快要接近它時,它又狠心的將我推開!狠心的C!語!言! 我無法拒絕C語言的原因:UNIX由C編寫而成,其運行在大部分手機與大多數云環(huán)境當中,這意味著必須有人繼續(xù)使用星號與大括號進行開發(fā),否則這一切都將無法為繼。另外,還有設備驅動程序、嵌入式程序以及Linux/Unix代碼庫的維護工作——好了,這個憂傷的話題到此結束。 接下來輪到我最開心的環(huán)節(jié),我!要!開!始!吐!槽! 作為擁有“便攜式匯編語言”頭銜的C語言,絕對充斥著各種問題!相信沒有人會喜歡編寫,大量獨立的頭文件,也更沒有幾個人能在使用預處理器的時候保持平和心態(tài)。 從理論上講,我們應該能夠利用指針的數學能力,完成無比睿智的壯舉,但很少有人能超越已經存在的數據結構。事實上,鼓搗指針往往正是代碼崩潰的起點。即使大家自身水平能夠輕松搞定指針,但也需要編寫冗長的注釋加以記錄,這相當讓人抓狂。另外,我想問一下各位,有人幾個人能記住編寫C代碼所應當遵循的全部最佳實踐嗎?例如避免一切潛在的安全漏洞,好吧,我個人不太行。 2.JavaScript 難度系數:4星 吐槽系數:4星 推薦指數:4星 JavaScript給我的感覺,就是一位悲觀型的女生形象。為什么這樣說呢,誰叫它們總是用小括號、中括號與大括號包裹著自己呢! 我無法拒絕JavaScript的原因:互聯(lián)網以及無數瀏覽器仍然堅持使用JavaScript,而Node.js的出現(xiàn)甚至迫使我們在服務器端也要使用JavaScript。至少在可預見的未來,JavaScript還將不斷折磨我們。 接下來輪到我最開心的環(huán)節(jié),我!要!開!始!吐!槽!哈哈~ JavaScript的締造者們希望打造一款現(xiàn)代化語言。遺憾的是,他們的成果逼迫我們不斷使用小括號、中括號與大括號來完成正確的嵌套關系。而匿名函數、閉包與JSON數據結構則讓我們的小指變得越來越發(fā)達。 另外,我們還需要關注很多奇怪的細節(jié)。如果x作為字符串包含字符1,那么x+1將產生字符串11,而x-1則會產生數字0。誰還會記得false、null、NaN以及undefined之間的區(qū)別呢?它們聽起來很像,但JavaScript為什么非要對此進行區(qū)分?為什么不能把它們合并起來? 3.PHP 難度系數:3星 吐槽系數:3星 推薦指數:4星 PHP給我的感覺是一位單純乖巧型女生,至于原因PHP相比其他語言更簡單,PHP性能足夠好,熱部署、易修改,我們也不用那么費心啦~ PHP其實并不能算是真正的計算機語言,而更像是一款用于向靜態(tài)HTML中添加智能機制的工具。大家可以將信息存儲在數據庫中并為其匹配靜態(tài)標簽。雖然還有更多功能,但總體來看PHP的基本作用就是對我們提取自數據庫的字符串進行粘接。 但爭議歸爭議,大多數Web仍然由PHP構建而成。在WordPress、Joomla以及Drupal中,大多數內容都通過PHP代碼進行交付。另外,F(xiàn)acebook也是由PHP編寫而成。幸運的是,F(xiàn)acebook打造的HipHop Virtual Machine啟發(fā)了Zend,而PHP 7.0也是由此誕生。這些新型PHP引擎通常速度更快,但這同時意味著我們未來仍然得活在PHP的陰影當中。 4.Cobol 難度系數:3星 吐槽系數:2星 推薦指數:3星 Cobol給我的感覺是一位很受寵的富家型女生的形象,至于原因是Cobol能得到很多有強大身份的人喜愛。 Cobol誕生于1959年,這種早應該過時的語言,存在著數以百計限制詞匯。然而Cobol是數據處理領域最為廣泛的程序設計語言,也是第一個廣泛使用的高級編程語言。并且,支持者的Cobol的開發(fā)者們,會從其它語言中汲取靈感并充實到Cobol上,因此Cobol的版本還在不斷地更新中。 在企業(yè)管理中,數值計算并不復雜,但數據處理信息量卻很大,許多人會購買一臺大型計算機并運行Cobol代碼。截至目前,Dice.com網站上仍有543個崗位包含“Cobol”一詞。從保險公司到國防承包商,眾多東家仍然喜歡使用Cobol,因此想要投身其中的求職者顯然別無選擇。 5.XSLT 難度系數:3星 吐槽系數:4星 推薦指數:2星 XSLT給我的感覺是一位很會偽裝的腹黑型女生的形象,至于原因是不了解它們會以為它們很方便,了解后就會發(fā)現(xiàn)它其實就是一個大“坑”! 每個人在初上手XSLT時都喜歡它,它的函數型語言能夠實現(xiàn)XML轉換。然而一旦超出搜索與替換范疇,它的功能限制性就開始暴露出來。最令人難以忍受的是,XSLT的變量與其它語言中的變量在概念上就有所區(qū)別,這瞬間把程序員們弄成了數學家——甚至出現(xiàn)了與之相關的玄學理論。 XML也許將逐步被JSON等更為高效的數據格式所替代,但它目前仍然擁有相當旺盛的生命力。雖然大家可以跳過XSLT直接編寫代碼以進行文本解析,不過請相信我,這種作法耗費的時間比學習XSLT更長。 6.Java 難度系數:4星 吐槽系數:4星 推薦指數:5星 Java給我的感覺是一位邋遢學霸型女生的形象。 虛擬機與庫概念可以追溯至上世紀九十年代,但語法則早在上世紀七十年代即與C語言一同出現(xiàn)。自動內存管理看起來很美,直到惡心的垃圾回收機制毀掉這一切。 Java程序員們一直在抱怨這方面問題,而且其中一部分,也確實被甲骨文所解決。然而,解決的過程又帶來了新問題。一部分新型代碼及庫無法在舊有虛擬機上運行。我就經歷過這樣的困擾,事實上Java 1.4之后的每個版本都像是一種完全不同的語言。 但這一切都不重要。Java是Web與移動手機的基石,它也是高校當中教授的第一門語言。相關代碼庫愈發(fā)龐大,其價值也遠遠超過其它語言。我們能怎么辦?忍著吧。 7.Python 難度系數:4星 吐槽系數:3星 推薦指數:4星 Java給我的感覺是一位萌萌的蘿莉型女生的形象。 這是一種適合年輕人學習的現(xiàn)代語言。其很少用到標點符號,因此代碼看起來更加簡潔。問題在哪?首先,Python 2.7與3.0之間存在巨大差異。雖然發(fā)展是必要的,但步子邁得太大無疑容易扯著蛋。我們永遠需要關注當前設備上使用的到底是哪個Python版本,同時認真數清一切代碼縮進、大括號以及空格等等。 同樣的,這些抱怨毫無意義。Python擁有大批受眾,特別是“軟科學家”群體。生物學家與經濟學家將Python視為最強語言,有些人甚至建議在股票與債券的說明文件中添加Python代碼,這樣銀行家們就能夠通過Python看懂其中真正的含義——而不被那幫律師騙子所蒙蔽。 好消息是,閱讀Python代碼確實要比閱讀法律文件更容易。這是種進步,而且是種我們無法抗拒的進步…… 原文鏈接:http://www./article/3072163/application-development/7-programming-languages-we-love-to-hate-but-cant-live-without.html 原文標題:7 programming languages we love to hate -- but can’t live without 原文作者:Peter Wayner 【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】 本文為原作者看法,不代表51CTO傳媒立場。 |
|