如何通过学习开源项目来提高自己
学习各种开源项目,已经成为很多朋友不可回避的工作内容了。笔者本人也是如此。在接触并学习了若干个开源项目之后,笔者试图对自己工作过程中的若干体会加以总结,以期对一些希望借鉴的朋友有所裨益。 需要说明的是,笔者本人接触的开源项目大多属于计算机系统领域,例如Linuxkernel,KVM,QEMU,OpenStack等。因此,此处介绍的经验必定也有些局限。请读者们自行分辨,区别对待。 1. 学习分层和目标管理 对于一个开源项目,可以将与之相关的各种知识和技能的学习大致划分为如下五个层次: 第一层次:了解项目的基本概念、基本用途、逻辑结构、基本原理、产生背景、应用场景等基本知识。 这个层次的基本定位其实就是“科普”。如果对于一个项目只需要有些基本了解,且短期内并不需要上手进行实际技术工作,则学习到这个层次也就可以先应付一下了。 第二层次:掌握项目的基本安装流程和使用方法。 这个层次的基本定位是“入门”,以便对这个项目获得直观认识,对其安装和使用获得亲身体验。如果只是需要以as-is方式使用这个项目,则初步学习到这个层次即可。 第三层次:了解代码的组织,找到各个主要逻辑/功能模块与代码文件...