5 款讓我又愛又恨的編程語言!(2021/01/20)
5 款讓我又愛又恨的編程語言!(2021/01/20)
資料來源: https://mp.weixin.qq.com/s/Y_8smcqfoXNmyrL2xbNkdw
1.C語言
C語言給人的感覺,就是一位神秘莫測而又高冷型的女生形象。
這是因為c語言相比其他編程語言難度高一些,這也就多了一絲神秘,每當以為快要接近它時,它又狠心的推開!狠心的C!語!言!
無法拒絕C語言的原因:UNIX由C編寫而成,其運行在大部分手機與大多數雲環境當中,這意味著必須有人繼續使用星號與大括號進行開發,否則這一切都將無法為繼。另外,還有設備驅動程序、嵌入式程序以及Linux/Unix代碼庫的維護工作——好了,這個憂傷的話題到此結束。
接下來輪到最開心的環節,要!開!始!吐!槽!作為擁有“便攜式彙編語言”頭銜的C語言,絕對充斥著各種問題!相信沒有人會喜歡編寫,大量獨立的頭文件,也更沒有幾個人能在使用預處理器的時候保持平和心態。
從理論上講,我們應該能夠利用指針的數學能力,完成無比叡智的壯舉,但很少有人能超越已經存在的數據結構。事實上,鼓搗指針往往正是代碼崩潰的起點。即使大家自身水平能夠輕鬆搞定指針,但也需要編寫冗長的註釋加以記錄,這相當讓人抓狂。
另外,我想問一下各位,有人幾個人能記住編寫C代碼所應當遵循的全部最佳實踐嗎?例如避免一切潛在的安全漏洞,好吧,我個人不太行。
2.JavaScript
JavaScript給人的感覺,就是一位悲觀型的女生形象。為什麼這樣說呢,誰叫它們總是用小括號、中括號與大括號包裹著自己呢!
無法拒絕JavaScript的原因:互聯網以及無數瀏覽器仍然堅持使用JavaScript,而Node.js的出現甚至迫使我們在服務器端也要使用JavaScript。至少在可預見的未來,JavaScript還將不斷折磨我們。
接下來輪到最開心的環節,要!開!始!吐!槽!哈哈~JavaScript的締造者們希望打造一款現代化語言。遺憾的是,他們的成果逼迫我們不斷使用小括號、中括號與大括號來完成正確的嵌套關係。而匿名函數、閉包與JSON數據結構則讓我們的小指變得越來越發達。
另外,我們還需要關注很多奇怪的細節。如果x作為字符串包含字符1,那麼x+1將產生字符串11,而x-1則會產生數字0。誰還會記得false、 null、NaN以及undefined之間的區別呢?它們聽起來很像,但JavaScript為什麼非要對此進行區分?為什麼不能把它們合併起來?
3.PHP
PHP給的感覺是一位單純乖巧型女生,至於原因PHP相比其他語言更簡單,PHP性能足夠好,熱部署、易修改,我們也不用那麼費心啦~
PHP其實並不能算是真正的計算機語言,而更像是一款用於向靜態HTML中添加智能機制的工具。大家可以將信息存儲在數據庫中並為其匹配靜態標籤。雖然還有更多功能,但總體來看PHP的基本作用就是對我們提取自數據庫的字符串進行粘接。
但爭議歸爭議,大多數Web仍然由PHP構建而成。在WordPress、Joomla以及Drupal中,大多數內容都通過PHP代碼進行交付。另外,Facebook也是由PHP編寫而成。幸運的是,Facebook打造的HipHop Virtual Machine啟發了Zend,而PHP 7.0也是由此誕生。這些新型PHP引擎通常速度更快,但這同時意味著我們未來仍然得活在PHP的陰影當中。
4.Java
Java給我的感覺是一位邋遢學霸型女生的形象。虛擬機與庫概念可以追溯至上世紀九十年代,但語法則早在上世紀七十年代即與C語言一同出現。自動內存管理看起來很美,直到噁心的垃圾回收機制毀掉這一切。
Java程序員們一直在抱怨這方面問題,而且其中一部分,也確實被甲骨文所解決。然而,解決的過程又帶來了新問題。一部分新型代碼及庫無法在舊有虛擬機上運行。我就經歷過這樣的困擾,事實上Java 1.4之後的每個版本都像是一種完全不同的語言。
但這一切都不重要。Java是Web與移動手機的基石,它也是高校當中教授的第一門語言。相關代碼庫愈發龐大,其價值也遠遠超過其它語言。我們能怎麼辦?忍著吧。
5.Python
Python給我的感覺是一位萌萌的蘿莉型女生的形象。這是一種適合年輕人學習的現代語言。其很少用到標點符號,因此代碼看起來更加簡潔。問題在哪?首先,Python 2.7與3.0之間存在巨大差異。雖然發展是必要的,但步子邁得太大無疑容易扯著蛋。我們永遠需要關注當前設備上使用的到底是哪個Python版本,同時認真數清一切代碼縮進、大括號以及空格等等。
同樣的,這些抱怨毫無意義。Python擁有大批受眾,特別是“軟科學家”群體。生物學家與經濟學家將Python視為最強語言,有些人甚至建議在股票與債券的說明文件中添加Python代碼,這樣銀行家們就能夠通過Python看懂其中真正的含義——而不被那幫律師騙子所蒙蔽。
好消息是,閱讀Python代碼確實要比閱讀法律文件更容易。這是種進步,而且是種我們無法抗拒的進步~