最近一直在看李先静老师的《系统程序员成长计划》,作为一个连入门都不算的小菜鸟,书中附带的源码,着实让人头疼,还望看到这些话的大大们不要笑我,以前接触的都是课本里的小程序,自己写的大都是一些简单的测试程序,书中好多概念和内容都是很新鲜的……,链表那里还好,到了多线程并发那里就有些乱了,看了几日把基本框架理解了以后细节上的问题就一塌糊涂了,现在痛定思痛,认真考虑一下读源码时的策略。
先整理一下读代码的时候遇到的问题:1> 最大的感觉就是乱,特别是程序中对众多结构的成员的功能记不太清,在对其操作的时候,看的找不到北
2> 对程序实现的细节有些弄不清,往往看的云里雾里
3> 看的太着急,事实证明心急是吃不了热豆腐的,呵呵
其实上面这些总结起来就是看不太懂拉,一是自己经验太好,关键还是读的方法不对,先说心态,现在回想起来,读代码的时候通常没有太大的次序,一般是直接读主文件,看到有什么结构的定义再去找头文件里面的定义,找到再回去读,就这样从头看到尾,看完都很迷茫。
再整理一下应对的思路:1> 摆正心态,准备打持久战, 但是要保持心平气和。 小代码,哥早晚搞定你,等着吧,嘿
2> 分模块阅读。先了解程序的主干, 逐个击破,对不懂的地方及时查阅资料
3>在读买个模块前先试试自己去解决,走一下自己的思路,或者是自己写出来,运行下,再与源码对比有什么差别
4>新建一个文档, 读完一个模块就在理解的基础上模仿写出,并且大胆修改
5>做笔记, 书上或者是源代码旁边加注释
6> 借助画图等一些方式帮助对源码的理解
好了就先这些,光说不干不行,上面的方法只是假想, 只有实践才能出真知!不要懒!不要懒!