百科问答小站 logo
百科问答小站 font logo



如何看待侯捷所说的「源码面前,了无秘密」? 第1页

  

user avatar   rednaxelafx 网友的相关建议: 
      

这不能脱离背景乱下结论。侯捷老师在他的源码剖析类书(例如《STL源码剖析》)里会写出这样的话,主要应该是为了鼓励读者从源码学习各种知识、内在机理,而不必畏惧规模比较大的源码的复杂度而不敢去读。

当然,从实操角度看,“只靠读源码来学习”通常不是特别有效的办法。侯捷老师想来也不是要忽悠大家光靠源码就能揣摩出所有知识,而是应该把它作为吸取知识和经验的一个途径。源码经常要处理些麻烦的现实问题从而掩盖了其原本的最主干的思路脉络。如果能结合论文、专业书籍学习相关理论知识再来读源码,想必能事半功倍。

如果硬啃源码但不理会其背后可能蕴含的理论基础,那很容易捡芝麻丢西瓜,只见树木不见森林,让“了无秘密”变成了一句空话。不幸的是这种情况也是常态…所以vc大大说“理论值”我觉得也对。

之前我组织过一次“JVM源码阅读活动”,但我那次实际上是建议大部分同学不要从源码入手学习JVM,原因正在此。

传送门:

第0回JVM源码阅读活动

另外如果遇到程序出现奇怪的行为想要去了解原因的话,那读读源码还是很有好处的。

后面

@叔度

的回答我也很认同 >_<

侯捷老师的这句话跟写程序不需要形式化证明完全没关系吧。不知道为啥后面有些回答会从这个角度切入。




  

相关话题

  如何看待萧井陌办IT培训班? 
  一般编程的时候,使用汇编能比使用高级语言(比如C,C++,java等)有更高的运行效率吗?高能高出多少呢? 
  如何看待「大部分程序员只会写三年代码」的说法? 
  30 岁才开始学习编程靠谱吗? 
  一个浮点数到底是怎么被转换为字符串输出?一个浮点数不精确,那么其输出的值是怎么被确定的呢? 
  小白想学编程,有什么推荐的入门级别建议吗? 
  如何用一句话说明什么是面向对象思想? 
  不懂编程能成为产品经理吗? 
  如果2个月可以训练出一名合格的码农,那么相关专业出来的大学生,4年书岂不是白读了? 
  什么是 Type Driven Development ? 

前一个讨论
为什么很多即时游戏的初始建造者总被称作农民?
下一个讨论
维珍航空种族歧视的结果到底是什么?





© 2025-05-14 - tinynew.org. All Rights Reserved.
© 2025-05-14 - tinynew.org. 保留所有权利