补充一下想法,好多代码直接试着去读,很难理解,Debug一下就豁然开朗了所以,如果能Debug,不失为一种 读解代码的 好方法

解决方案 »

  1.   

    都成推荐了。。再补充一句,其实丰富自己的经验,充实自己的知识库也是很重要的
    比如要你研究Linux内核源码,不说最新内核版本,就说各种分析各种深入浅出烂大街的2.6版本,代码应该说相当规范了,文档也几乎不能再详细了,但要你研究出个什么结果还是不太可能的,能看得懂结构逻辑与算法就已经算牛逼的了,更多的人可能没几个模块看得懂的,因为这涉及到很多操作系统的知识,没看过理论分析的几乎是不可能直接看得懂代码的(当然天才级大师除外),同时就算你懂一些操作系统理论,不了解很多著名算法还是看不懂,线程调度文件系统安全加密等都涉及到大量基础算法,以及他们的衍生“杂交”品种,没得功底修炼不了传世之作,不然只会走火入魔。
      

  2.   

    1. 先了解你要读的代码是用来做什么的,这样就会对代码产生一个比较直观的认识。比如,快速的做一遍功能测试,如果有功能测试文档,那就按照文档走一遍。
    2. 比较大的工程,代码的风格,和各个功能的实现都是十分类似的,如果不是这样,也就预示者这个项目的架构设计比较失败,难于维护。带着问题去阅读代码中的某个模块。比如,解决某个bug,通过解决这个bug,并对bug所在的这个模块深入理解。这样,结合1,你就能猜到整个系统的实现大概是个什么样子。
      

  3.   

    一个良好的程序员,耦合性是很低的。从单独的模块入口看起,一般都是能理清楚的,主要这都是业务逻辑比较simple,看框架可能就要结合这接口的声明来看了
      

  4.   

         按功能来划分代码成模块,这是快速,大致上理解代码。
         然后逐步分解....
         当然,分解到何时何处是最基本,这要看系统的复杂程序和你的“循环层”and你想要的结果决定的
      

  5.   

    有Demo最好,优先走一遍Demo大牛们给出的意见普遍是,任何源码都从文档和框架走起。Debug是一种手段,善用Debug,例如把项目的日志输出开到最大,安装虚机进行调试等等。随时调,随时做笔记!自己理框架,有了轮廓其他的都轻车熟路了。
      

  6.   

    1,根据文档和运行的项目了解功能,知道开发的目的。
    2,根据类的名字,有时候也能看出点问题
    3,个别不懂dug一下
      

  7.   

    项目----->模块----->包-------->类-------->方法