Java語言對於我來說是一個很真實的夢想。記得在大學二年級的時候,我在圖書館看到了一整排的Java語言的參考書,那些書都是嶄新的,在我的眼前透露出一股神秘的吸引力。我已經記不得我第一本接觸的是什麼書,只記得那時候翻開了書之後,馬上發現了Java語言的一個別稱:“爪哇”,更加增加了Java語言的神秘感。不過短暫的接觸並沒有真正把我吸引到Java的世界中去,因為大二的時候剛開始學習C語言,對面向結構的語言剛剛開始接觸,對面向對象的語言就更沒有想法了,Java這個純對象對於我來說是一個遙不可及的高峰。
後來一次偶然的機會,看到了同寢室的同學的一封電子郵件,一個獨眼白黑小精靈的形象跳入我的視界,它不停的翻著筋斗,從電子郵件信紙的左邊翻到右邊,又從右邊翻到左邊,偶然招招他的小線手向我們致意,給我留下了不可磨滅的印象。我第一次知道網絡是這樣活潑有趣的,我也知道了Java是這一切的制造者。我對Java這個詞語倍感親切。
以後的很長的一段時間,我經常嘗試著去學習Java。當時編譯Java是一件很困難的事情,我對命令行的編譯環境天生有一種抵觸,所以我費了很大的力氣想去找到一個好的Java集成開發環境,就像TurboC2那樣。哈哈,說到這裡我發現這可真是一個笑話,那個時候的我仍然只知道TurboC2是最好的開發環境,而對VC和TC++根本沒有接觸,可是卻已經與Java結下了不解之緣。後來我找到了Java workshop,它能夠在windows下運行,而且界面非常漂亮,是現在微軟公司青睐的扁平風格,而且工具欄圖標很大,圖片很漂亮。但是很遺憾我最終沒有把握java workshop這個工具,也完全沒有把握Java語言。
現在想想當初是太心急了,我連Java語言的基本特性和語法還沒有熟悉清楚,就迫不及待的開始用IDE開發了。可憐當時的我也已經與Java一起混了兩年多,可是直到我開始接觸C++之前,我還不知道“面向對象”是什麼意思,真是有點……丟臉了。
時間總是慢慢的把記憶推向遠處,大學生活很快已經成為了昨日的回憶,我也從大學出來成為了一名可憐的程序員。靠著大學裡面打下的C語言基礎以及畢業前對VC的突擊學習,我在杭州的一家小電腦公司找到了第一份工作。我整天泡在電腦面前,與C++語言結下了很深的友情。漸漸地我把所有的精力都投入到了C++這個神奇的語言世界裡,我開始深入了解C++。還不到一年之後我換了工作,我仍然使用C++和VC工作,而且我有更多的自由和時間去實踐自己對於C++和面向對象的理解,由此我對面向對象有了更廣泛更深入的了解,多態、繼續、封裝成為我開發程序的三把利劍。
與此同時我看了很多關於C++和Java相對比的學術論文,知道了兩者之間很多的相同與不同,也看到了兩者在軟件開發世界裡的斗爭,此時的我對於C++有了比Java更多的感情,所以當看到一些來自Java世界的對C++的批判的時候,我有些不服氣,更多的站在了C++這一邊。現在想想,語言對於程序員來說只是擺在面前的不同工具,兩者之間的斗爭歸根到底是為了促進共同的進化,與階級斗爭完全是從本質上不同的。
相比於C++十幾年的歲月,Java的歷史只有短短的五六年。Java與C++恰似是一個少年人與一個青年人。C++已經長的壯實高大行動靈敏聰明高超,而Java則在許多人的關懷與寵愛之下,迅速地走向C++的今天。如今的Java走向了更廣闊的網絡世界和企業應用領域,J2EE架構成為業界事實上的主流標准,Java技術帶來了中間件、動態網頁技術等許多全新的令人興奮的技術。在我對C++了解得越來越深入的時候,我意識到了這些現象,我又一次地對Java有了一種迫切的了解欲望,我一直期待著有機會能夠真正的投入到Java的世界中。
在三個月前接到了一個WebGIS的項目之後,幾經猶豫,我最終選擇了用Java技術來開發這個項目。此時的我與四年前那個莽莽撞撞的闖入Java世界的我已經完全不同了,我已經能夠從更高的層面上去看待一門語言,我用半天的時間看完了《Java百事通》這本入門級的書,又有幸的能夠買到O'Reilly的《jsp技術》這本經典書籍。兩三天之後,我已經能夠開發出自己的網站和真正的Java程序了。我與Java的故事是從這裡才真正開始的。