正确的学习方法不仅能够让你事半功倍,也能够让你更加接近真理。初学一个工程的源代码,往往让初学者手足无措。下面的方法希望为初学者带来启示和便利。这个学习方式是基于编译环境和语言比较熟悉的基础上。最重要的是你要确定你要阅读的源代码是一份好代码。因为阅读代码就像阅读书籍。好代码让你终生受益,坏代码会给你留下阴影。
一。先把源代码安装起来编译起来,结合它的文档和手册,熟悉其功能和它的应用方式。如果遇到的是英文文档,那么首先恭喜你,如果硬着头皮看下来,不仅能在国内开此系统或框架的先河,而且能让你阅读英文的水平大幅提升。
二。浏览源代码的目录结构,了解各个目录的功能。从整体上观察这个工程是有哪些模块组成的,最好能画一画图。
三。经过以上两步后你对这份源代码有了一个初步的了解了,现在开始分析它的源码吧。这一步我们开始分析源代码框架。例如入口方式是单入口还是多入口,页面之间的调用规则,能根据规则找出某个功能用到的页面。
四。熟悉源代码的代码写作风格,例如缩进方式,排版格式,变量命名,函数命名等。
五。熟悉一下源代码用到的数据库和表,可以参考它的技术支持文档。
六。经过以上几步相信已经对源代码有了更深刻的了解,不过这种了解还只是表面的,下来我们从7个方面具体的去分析它吧:
1.入口构造以及页面调用方式的具体实现,如果阅读时看到工具类和工具函数,尽量去熟悉一下。这一步的分析可以学习到源代码的系统架构方式。
2.分析源代码用到的工具类和工具函数,这样可以学到很多程序编写技巧。可以提升自己编程功力。
3.结合一些安全规则,研究这个源代码是怎样实现安全方面的设计的。这样可以提高自己在安全方面的意识和功力。
4.如果有模板引擎的话,研究一下源代码的模板引擎。大致从实现方式,效率,易用性等几个方面去考虑。
5.研究系统的各个功能模块,这样既能学习编程技巧还能打开自己的编程思路,下次遇到类似的东东就心里有谱了。
6.研究系统所用到设计模式,一样的功能实现,用到的设计模式可能相差很多,对比我们之前所作的东东分析设计模式,是提升我们驾驭代码的不二法门。
7.研究源代码对访问压力,执行效率,系统效率,数据库查询的优化。
七。做笔记,把这个开源代码实现的功能,实现方式、设计框架、模块组织、以及代码技巧等记录下来。边记录边总结整理,对学习的东西更容易消化吸收。
八。实践是检验真理的唯一标准,修改一些比较简单地功能,或者写一些简单的sample,并且调试出来,这样才能做到更加理解代码。同时框架性的源代码里一般都有自带的实例,修改使用这些实例,可以快速了解框架的使用。