一、为何阅读开源软件
这是一个对于程序员来说,非常重要的动机问题,如果没有足够的动机,那么阅读开源软件的过程中会变得没有目的,效率低下。
那么阅读 开源软件有什么意义呢?需要说明的是,软件的构建是一个复杂的过程,是一个逐步细化的过程。因此,我们可以从不同的粒度来审视一个优秀的开源项目,比如说,较大的粒度有设计角度、风格、模式,而较小的粒度上有编码、注释、命名等。
根据不同粒度上的意义,总结了有如下几点。
1.理解编程理论
我们所学过的课本上的知识,有时候对于我们而言过于抽象。很多东西我们只有在做的过程中才能深刻体会。
下面列举一些我们常见的一些抽象概念:
- 高内聚,低耦合
- 接口隔离
里氏替换原则
…
这些概念对于我们来说都是非常抽象的一些东西,如果我们不去在代码中体会这些东西,是很难体会到的。
我们要做的很重要的一件事情,是将这些抽象概念与具体代码之间形成一定的映射关系,这样子才能深刻体会 这些抽象的概念,所以我们需要去深入到代码中去体会这些抽象的东西。也只有这样我们也才会更家容易具备从抽象到代码实践的能力。
建议在代码阅读时,多问自己下面的一些问题:【代码现