阅读源码技巧

 

1.技术储备

  设计模式:模板方法,单例,观察者,工厂方法,代理,策略,装饰者

  比如阅读Spring源码,肯定得先了解IoC是怎么回事,AOP的实现方式,CGLib,Java动态代理等,自己动手,写点相关的代码,把这些知识点掌握了。

2. 必须得会使用这个框架/类库, 最好是精通各种各样的用法。

3.找书,找资料,了解这个软件的整体设计。

  都有哪些模块? 模块之间是怎么关联的?怎么关联的?

  可能一下子理解不了,但是要建立一个整体的概念,就像一个地图,防止你迷航。

  在读源码的时候可以时不时看看自己在什么地方。  

4. 搭建系统,把源代码跑起来!

  Debug是非常非常重要的手段;

5. 根据你对系统的理解,设计几个主要的测试案例,定义好输入,输出。

  运行系统,慢慢地debug ,一步步地走,这是个死功夫,没有办法绕过。

  Debug一遍肯定是不行的,需要Debug很多遍。

   第一遍尽可能抛弃细节,抓住主要流程, 比如有些看起来不重要的方法就不进去看了。

   第二遍、第三遍....再去看那些细节。

   一个非常重要的工作就是记笔记(又是写作!),画出系统的类图(不要依靠IDE给你生成的), 记录下主要的函数调用, 方便后续查看。

  文档工作极为重要,因为代码太复杂,人的大脑容量也有限,记不住所有的细节。

  文档可以帮助你记住关键点, 到时候可以回想起来,迅速地接着往下看。

6.主要的测试案例搞明白了,丰富测试案例,考虑一些分支流程。

   继续Debug......

   总之,静态地看代码 + 动态地debug (从业务的角度), 就会慢慢揭开这个黑暗森林的面纱。

  这一步会非常非常地花费时间,但是你做完了,对系统的理解绝对有质的飞跃。

转载于:https://www.cnblogs.com/ccEmma/p/8690034.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值