码农阅读代码的时间远超过写代码的时间,为了提高编程能力,阅读是必不可少的_风闻
code2Real-有人就有江湖,有code就有bug2021-08-31 11:34
【本文由“七彩龙舟”推荐,来自《《三体》是一部欺骗史》评论区,标题为小编添加】
- 朝乾夕惕
- 倒也不是现在的人受不了长文,这几年我和我孩子都在重读经典,人名超级拗口的《罪与罚》都啃下去了,《三体》算是相当好理解的了。
然而,读书如吃饭,能不能下咽取决于好不好吃,若索然无味或不知所云,浅尝即止可矣。
码农的阅读代码的时间远超过写代码的时间。
许多人是“面试造航母,工作拧螺丝”,到了大厂后就是代码阅读和维护工作,真正写几万行代码的机会不多。
为了提高编程能力,阅读是必不可少的。
阅读代码相当于解迷,程序员都不喜欢写文档,文档帮不了太多的忙,而且经常是代码变了,文档还没有更新。
甚至有人说如果有人教他写文档,他愿意每天付1000美金。
为了理解复杂代码,就需要掌握比较难的编程语言,按难易程序看,haskell>c++>scala>rust。
要学会haskell就需要掌握数学“范畴论”。
曾经听到一种说法,数学发展至今经过了三层抽象。
第一层:从实际生活中抽象出了数、平面几何等概念。
第二层:数学家们觉得上述概念是在太具体了,因此将其进一步抽象:数->群环域曲线曲面->拓扑空间,流形多维的数组->向量空间,希尔伯特空间。
第三层:数学家们又觉得上述概念太过于具体了。因为一是在研究各种概念时发现了很多相似的性质,如线性空间之间存在线性映射,微分流形之间存在光滑映射。二是随着深入的研究发现各个概念已无法单独的考虑了,必须考虑他们之间的关系,如研究代数拓扑不可能只研究拓扑空间,还必须研究拓扑空间所导出的一些群,这就是同伦同调上同调。
范畴学就是考虑所有这些不同概念之间的联系,随着罗尔腾迪克的代数几何中的大量应用得到了空前的发展。现在又有了高维范畴等进一步抽象,抽象程度已经到了令人发指的程度!当然,其威力也是巨大的,一个范畴学中的定理可以在截然不同的数学领域中得到应用,只需在后面加一句by abstract nonsense就行了。
有人说:
一流程序员靠数学,
二流靠算法,
三流靠逻辑,
四流靠SDK,
五流靠Google和StackOverFlow,
六流靠百度和CSDN。
相比代码阅读,读小说是放松,不会觉得人名太长,因为代码中变量的名字也很长的。
当然为了提高阅读能力,还要努力读哲学书,那真是玩概念。
中国高等数学能力不如国外,因为不擅长玩概念,受此影响软件研发水平比较低。