在阅读了一周的 OpenJDK 源代码后,我才写这篇文章。因为除非你已经开始阅读,否则是不知道自己是不是应该读下去的。所以,不要贸然说自己要干嘛,先做一段时间,觉得感觉还好,再决定做下去。
这一周,主要是看 java.util
中和容器相关的几个文件,虽然还没看太多,但是已经有一些收获了。看到了以前学过的数据结构在Java的标准库中是如何被实现的。也明白了平时使用的一些类的原理是什么。另外,由于最近在看
《Java编程思想》,也能把书中讲的和标准库的源代码对应起来,感觉还不错。还有一个收获就是明白了,基础越扎实,阅读源代码收获也越大,否则根本就看不出一些设计的初衷是什么。之前看到源代码中一些编写程序的方式,我觉得没有必要那样写,后来看《Java编程思想》,才知道为什么会这样写。也有一些是我觉得可以从源代码中学习的东西,从《Java编程思想》中看到,标准库中的编写方式有些是历史遗留问题,不得不那么写,而不是说我们写的时候,也要那样做。这就是说不要迷信那些你不明白的东西,即使他们看起来很权威。
另外,要长期坚持一件事情,最好是每天都在一个固定的时间来做,这样养成习惯,心理上就不会有什么负担。之前为了学好英语,我背单词,每天早上第一件事就是背单词,养成习惯,背了471天。后来,我开始阅读英文原著。每天中午饭后就开始阅读,每天读一章,从二月中旬到现在,已经读完了五本书,这样看来,之前定下的今年读十本原著的计划,应该没有问题了。 鉴于阅读源代码的重要性,我一周前决定要开始阅读源代码,并且养成习惯,每天都要读。于是,晚饭后的时间,我就固定下来阅读源代码,希望可以长期坚持。
我会按照 OpenJDK 的目录结构,把每个源代码文件的阅读笔记更新到 GitHub 上,然后再选一些更新到博客里。
原文地址:http://blog.csdn.net/on_1y/article/details/27231743