目录
1. 为什么要学习开源库
- 学习新的技能(框架,模式),提升自己的价值。
- 拓宽相关领域的思想。
- 看看同类都在做什么,大家如何交流,就是学习标准语言,只有语言统一了,才好交流。
- 准备为开源社区做贡献,牛皮虽然有点大,但是万一哪天实现了呢。
2. 如何选择开源库
- 和自己工作或者生活相关的库,只有用起来才有深入的乐趣和动力。学了不用,我敢保证第二天你的记忆已经断片。
- 项目的名气要高,就像学习方言,如何走遍全世界???成熟度要高,就像开着一辆未经过测试的汽车,好像环游世界的梦想也不现实。
3. 获取开源库
- 学习开源库,避免不了获取开源库,但是此刻不推荐看源代码,对于一问三不知的开源库,给你源代码,你也不知道看什么。
- 下载完整的开源库,而不是download-master.zip,这样得到的不仅是源代码,还有测试代码和修改记录。测试代码可以有助于入门,修改记录有助于掌握前因后果。
4. 学习开源库
4.1 从第三方了解这个库
- 从博客或者论坛等方面了解这个库,了解这个库创建的目的,功能,使用方法和注意事项。
4.2 看项目文档,项目的自我介绍才是对这个项目的最精确定位
- README.md 自己看着办吧
4.3 按推荐方法使用项目
- 编译运行,如果不能运行,也就没有看下去的必要了。
- 先看example,看看官方如何使用这个文档的,这是标准用法。
- 通过断点或者异常,把流程跑一遍。
- 屏蔽或者修改部分代码,查看是否还能正常运行。如果报错,看看哪里报错了。
- 代码revert
4.4 单元测试
- 执行单元测试,了解程序的功能。
- 执行单元测试,了解功能的边界条件。
5. 应用开源库
5.1 按自己需求使用项目
- 按自己需求调整项目,如果遇到问题,先不要网上查询,自己尝试去解决。
- 解决后去相关论坛,确认解决方法和自己是否一致。
5.2 了解源码
- 此时才是对源码开刀的时候,此步骤前对源码操作,难道不感觉有点早吗???
6. 项目DIY
- 此时应该对项目模块应该已经了解吧,核心模块,辅助模块的定位。
- 利用源码构建项目版本(如果条件允许)。