碼農閲讀代碼的時間遠超過寫代碼的時間,為了提高編程能力,閲讀是必不可少的_風聞
code2Real-有人就有江湖,有code就有bug2021-08-31 11:34
【本文由“七彩龍舟”推薦,來自《《三體》是一部欺騙史》評論區,標題為小編添加】
- 朝乾夕惕
- 倒也不是現在的人受不了長文,這幾年我和我孩子都在重讀經典,人名超級拗口的《罪與罰》都啃下去了,《三體》算是相當好理解的了。
然而,讀書如吃飯,能不能下嚥取決於好不好吃,若索然無味或不知所云,淺嘗即止可矣。
碼農的閲讀代碼的時間遠超過寫代碼的時間。
許多人是“面試造航母,工作擰螺絲”,到了大廠後就是代碼閲讀和維護工作,真正寫幾萬行代碼的機會不多。
為了提高編程能力,閲讀是必不可少的。
閲讀代碼相當於解迷,程序員都不喜歡寫文檔,文檔幫不了太多的忙,而且經常是代碼變了,文檔還沒有更新。
甚至有人説如果有人教他寫文檔,他願意每天付1000美金。
為了理解複雜代碼,就需要掌握比較難的編程語言,按難易程序看,haskell>c++>scala>rust。
要學會haskell就需要掌握數學“範疇論”。
曾經聽到一種説法,數學發展至今經過了三層抽象。
第一層:從實際生活中抽象出了數、平面幾何等概念。
第二層:數學家們覺得上述概念是在太具體了,因此將其進一步抽象:數->羣環域曲線曲面->拓撲空間,流形多維的數組->向量空間,希爾伯特空間。
第三層:數學家們又覺得上述概念太過於具體了。因為一是在研究各種概念時發現了很多相似的性質,如線性空間之間存在線性映射,微分流形之間存在光滑映射。二是隨着深入的研究發現各個概念已無法單獨的考慮了,必須考慮他們之間的關係,如研究代數拓撲不可能只研究拓撲空間,還必須研究拓撲空間所導出的一些羣,這就是同倫同調上同調。
範疇學就是考慮所有這些不同概念之間的聯繫,隨着羅爾騰迪克的代數幾何中的大量應用得到了空前的發展。現在又有了高維範疇等進一步抽象,抽象程度已經到了令人髮指的程度!當然,其威力也是巨大的,一個範疇學中的定理可以在截然不同的數學領域中得到應用,只需在後面加一句by abstract nonsense就行了。
有人説:
一流程序員靠數學,
二流靠算法,
三流靠邏輯,
四流靠SDK,
五流靠Google和StackOverFlow,
六流靠百度和CSDN。
相比代碼閲讀,讀小説是放鬆,不會覺得人名太長,因為代碼中變量的名字也很長的。
當然為了提高閲讀能力,還要努力讀哲學書,那真是玩概念。
中國高等數學能力不如國外,因為不擅長玩概念,受此影響軟件研發水平比較低。