2005年3月24日 晴 於 北京交通大學16號宿捨樓
現在讀大二下學期了,從大一下學期開始學習java,旁聽Java課程,到現在正式地上了必修的課程,一年多以來,感覺上對J2SE大概有了一個理解。不敢說鑽研得很深刻,但是也能解決許多問題了。
一年來,在學習的過程中,遇到了許多問題和困難,解決問題之余也漸漸積累了不少經驗。現在,同學之間討論或者許多詢問的問題中,我覺得許多都非常有代表性。從初學者的角度看,我覺得我可以提供一些經驗,使現在的初學者可以少走一些彎路,或者在郁悶的時候或者堅持不下去的時候,能夠看到一點希望。
這學期學校開java的必修了,很多同學在選擇課本的時候,都問道我這樣的問題:怎樣的書合適?真的不好回答這個問題,其實要看看你的底子了。如果對在學習java之前你對Cpp很熟悉的話,那麼你可以直接選擇類似於《Thinking in java》這樣的書籍,雖然很多人都說TIJ不太適合初學者,不過有面向對象的基礎的話,這本書還是很好理解的。如果你是一個真正的初學者,那還是先看一些簡單的吧,比如《The Java Tutorial》,如果你連C語言都沒有碰過,那麼我建議你先學一下C語言吧,因為你連基本的語法都不懂,不要太急躁了,你對Java的追求只能體現出你的浮躁。
說到浮躁,這也是一個很值得我們深思的問題。說實話,我覺得我自己也有這樣的傾向,不僅是我,估計大多數的人都有這個毛病。總是喜歡討論什麼語言最好,什麼語言功能強大。這種討論倒沒有錯,不過真正學習的時候,浮躁會使你失去很多。在學習過程中,我很努力地使自己保持心理的平靜,從基礎學起,甚至是一些看上去完全沒有必要的基礎。我可以很坦誠地說,《Thinking in java》原版第三版的前15章我至少仔細看過兩次以上,書裡面多處有詳細的讀書筆記。裡面的代碼60%以上的運行過,包括可能你認為很簡單的switch語句,包括一些簡單的類的繼承。對老師上課說的代碼,起碼也是讀過2次以上。這一年來,我讀過的Java代碼超過兩萬行,但是最復雜的每一個程序也只是一些套接字網絡編程的程序,而大多數的都是代碼的優化和程序的設計思想。正因為有這些經歷,我才敢在這裡寫下這段話,才敢說我有一個勉強扎實的基礎。
。。。(待續)
宿捨要熄燈了,明天繼續寫。