緊接著,喜馬拉雅到了,設置環境變量,classpath的設置是我當時最感郁悶的東西,相信現在的初學者對于此道還是一樣的,確實還是Microsoft的東西比較好用^_^,門檻很低,不至于嚇退初學者!你要知道,一個沒有path概念也沒有UNIX背景的初學者要設置以及弄明白為什么這么設置真不是一件輕易的事,而且主要是書上說的很模糊,而且當初我學習的時候環境并不好,因為我四周的同學并沒有學習Java的,我無處可問,慘啊……!我雖注冊了一個CSDN的帳號,可是很少上論壇,現在想來,假如當時能夠好好利用CSDN的資源,也不用走這么多彎路了!也不知道當時在什么地方找到這個配置方法,終于解了我的燃眉之急。隨后又聽說JCreator是比較好用的IDE,下載了一個2.5版的,用了之后發現果然不錯,至少不用每次都用console來編譯運行,翻過classpath這個攔路虎過后,此后的平原就比較開闊了,但當時只是感覺似乎自己學習的比較輕松,其實有很多東西沒有學扎實,以為自己懂了!打個比方吧,我直到快學完《Core Java》第一本書的時候我才在《Java in a nutshell》上面知道什么是class method,什么是instance method!
看完《程序員合訂本》,我基本上對Java領域的好書有了一些了解,隨后我知道了china-pub,知道以后買書之前要上那兒去轉轉,看看書評。再回學校之前,我列出了要買的一些書的清單,費用差不多到500RMB了。從家里一回學校,那500元也就眾望所歸的換成了N斤的質量良莠不齊的紙張了,這些紙張還真不能對等成知識!我記得那次書籍大采購中有用的書就只有這幾本《Java in a nutshell》,《Effective Java》,《Thinking in Java》(E),《Java與模式》(在我看《Design Pattern》以前:)),《A breif introdution to Data Structure and Algorithm Java Edition》,《Core Java:VolumnII:Advanced Feature》!其他的么,唉,可惜啊…………
看著CSDN上面蔡學鏞老師的專欄,也在一期一期的程序員中看著他的文章,非凡是有一篇叫做《我所知道的O’Reilly》,慢慢我對O’Reilly的書籍的感情與日俱增,O’Reilly的網站也成了我經常出沒的地方,那段時間我買了不少O’Reilly的書,因為O’Reilly俱樂部有會員的活動,似乎是積分多少可以免費送一本50或者60以下的書,主要是這幾個價格是O’Reilly的中文本比較喜歡訂的價格,49,59,69,75,85….當時我似乎一共買了6本,關于Java方面我覺得比較好的就是一本同樣是David Flanagan寫的《Java Example in a NutShell》,另一本就是《Java Cookbook》!隨后有資格獲得一本60元以下的書籍,后來我千調萬選選了一本《DNS與BIND》(3E)(其實我拿這些書根本就沒用:)) 59元,O’Reilly的工作人員非常熱心,首先告訴我這本書已經出到第四版了,但我告訴他我贈書的上限只能到60而則本書要69的時候,他告訴我一樣可以贈給我,當時可把我感動死了!^_^隨著我看的O’Reilly的書籍不斷增多,我看O’Reilly的書也形成了一個獨特的看法,每拿到一本O’Reilly的書籍,我一般是看封底的介紹,介紹這本書的內容以及一些權威人士對這本書的評價,大家都知道,O’Reilly的書籍封面都是一只動物, Java系列的代言人是Tiger,而且Java系列的書都是紫色的!隨后我會翻到最后幾頁看封面的動物是什么,然后看作者的介紹,最后才開始進入正文!那段時間也就形成了一種非凡的O’Reilly情節!
大家都知道,O’Reilly的In a nutshell series一向是品質的代名詞,剛開始看的時候我實在困惑為什么O’Reilly要用XXX in a Nutshell命名,后來有一天躺在床上午休的時候,忽然想起以前高中的時候看過Steven Hawkings的一本書叫做《Universe in a nutshell》(果殼中的宇宙),就連Universe都in a Nutshell更何況其他東西呢,所以技術手冊包涵范圍之廣,知識之全,可以說是可見一斑!
上半年剛開學的時候,我就以為自己對于《Core Java:VolumnI》已經理解透徹了,然后就開始看VolumnII了,而且同時還在看《Thinking in Java》(E)為了進一步鞏固基礎,不過在此之前我大致看了一下《Java in a NutShell》,也從前面的介紹中學到了很多我漏網的知識,就像上面所說的class method和instance method,還有對Java這個paltform也有了一些理解。不過開始讀VolumnII的時候,第一章就把我絆倒了,線程?什么東西,因為當時沒有學習OS,所以要理解線程的概念以及理解線程同步太過困難了,而且其中夾雜了一些AWT和Swing的一些應用,因為我在學習VolumnI的時候對于GUI就不太重視,覺得GUI既浪費時間而且也學不到太多東西,而且還比較麻煩,對于GUI的觀點我一直持續到現在,唯一不同的只是現在認為Java的Swing是學習Design Pattern的很好的例子!
慢慢在學習VolumnII過程中,我愈發的感覺到基礎的薄弱,于是我又拿起VolumnI,復習了一遍,發現又有新的收獲,我學習就這樣,我只要學習偶有所得便喜不自禁的^_^,如今我同樣不定期的復習以前看過的書籍,以尋求新的收獲。同時我也開始了《Thinking in Java》的學習,我以為,我已經看過《Core Java》的VolumnI了,按道理讀《TIJ》應該是輕車熟路,應該沒什么問題,但當我開始翻開第一章開始看的時候,又給了我當頭一棒,看不懂,非凡是后面那些關于Software Engineering的東西,不過到現在我還不怎么了解后面的東西:)