99 | 高效学习:如何学习和阅读代码?
陈皓
该思维导图由 AI 生成,仅供参考
你好,我是陈皓,网名左耳朵耗子。
读文档还是读代码
代 码 => What, How & Details
文档 / 书 => What, How & Why
可见,代码并不会告诉你 Why,看代码只能靠猜测或推导来估计 Why,是揣测,不准确,所以会有很多误解。而且,我们每个人都知道,Why 是能让人一通百通的东西,也是能让人醍醐灌顶的东西。
但是,代码会告诉你细节,这是书和文档不能给你的。细节是魔鬼,细节决定成败。这样的话我们不但听过很多,我们做技术的也应该体会过很多。当然,我们也要承认,这些代码细节给人带来的快感毕竟不如知道 Why 后的快感大(至少对我是这样的)。
书和文档是人对人说的话,代码是人对机器说的话(注:代码中有一部份逻辑是控制流程的逻辑,不是业务逻辑)。所以:
如果你想知道人为什么要这么搞,那么应该去看书(像 Effective C++、Code Complete、Design Pattern、Thinking in Java 等),看文档。
如果你要知道让机器干了什么?那你应该看代码!(就像 Linus 去看 zlib 的代码来找性能问题。)
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文由左耳朵耗子撰写,主要探讨了如何高效学习和阅读代码。作者强调了代码和文档的重要性,并提出了在不同情境下选择阅读代码或阅读书籍和文档的建议。他还探讨了学习过程中的感性认识和理性认识,并提出了新手和老手在学习过程中的不同需求。文章强调了在计算机行业中每个人既是新手又是老手的特点。通过对代码和书籍的阅读,作者呼吁读者在不同阶段寻求不同的学习方式,以提高技术水平和解决问题。文章内容深入浅出,为读者提供了关于学习和阅读代码的宝贵建议。左耳朵耗子还分享了一些阅读代码和源代码的方法和技巧,以及对于枯燥和量大的知识应该如何学习的思考。整体而言,本文为读者提供了有关高效学习和阅读代码的宝贵经验和建议,对于技术人员来说具有很高的实用价值。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《左耳听风》,新⼈⾸单¥98
《左耳听风》,新⼈⾸单¥98
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(39)
- 最新
- 精选
- metalmac.kyleCode Tells You How,Comments Tell You Why。 Brilliant!这总结太精妙了2018-09-0637
- 孙悟空耗子叔,可以推荐几个代码质量不错,适合精读的c/c++/java/go的开源项目么。2018-09-06334
- 薛璇这也意味着写应用程序时,规范的设计应该分几块去考虑,接口列表,粘合层,控制逻辑,错误处理,业务逻辑。2018-10-21114
- Y024Source Insight 感觉有点上古神器的样子,当年在外企必备神器,怀念下。2018-09-10111
- 小薛薛放下急于求成,慢慢能体会到理解深挖一个个小知识点的酸爽了。 why就是舒服。2018-09-0611
- lovedebug读源码推荐opengrok,自己搭建一个server就行2018-09-067
- 拯救地球好累文档和书籍有助于理解原理和思想,代码更有助于了解细节。 阅读源代码并非是上来就硬钢代码,首先要补充相应的基础知识,明确软件功能并简单实践,阅读相应的文档说明。在进入细节前还应先把握代码整体的组织结构,再从接口抽象和模块粘合中把握基本要点,再弄清楚业务流转的流程(画图)。在看具体实现时应当区分业务逻辑和控制逻辑,正常代码和出错处理代码,正常逻辑和数据处理逻辑,核心算法与其他算法,软件内的实现与底层实现。区分这几种代码可以让我们更有效地抓住重点,删繁就简。最后,可以考虑运行时调试。2019-08-106
- Aleck耗子叔,看了您前端、后端、机器学习等等讲了很多,就是没有讲移动的。 您啥时候能讲一下移动的发展路径和知识树吗?然后自己也感觉未来移动的需求会趋向于饱和,请问耗子叔对移动的未来发展怎么看2018-09-066
- 刘鹏不知道Linus如果不幸离世,还有没有人看得懂Linux内核2018-09-0625
- 且听风吟这个方法很赞呀。最近正要看Java concurrent相关的源码,希望能啃下来。。。2018-09-064
收起评论