如何學習JAVA

1級 寫小紙條


學習Java其實應該上升到如何學習程序設計這種境界,其實學習程序設計又是接受一種編程思想。每一種語言的程序設計思想大同小異,只是一些由語言特性的而帶來的細微差別,比如Java中的Interface,你幾乎在以前的學習中沒有碰到過。以下我仔細給你說幾點:


1.我們必須明確一個大方向,也就是說現在面向對象的編程範疇。儘管人工智能曾經有所浪潮(看看Borland爲什麼有Turbo Prolog),但未來5-10年工業界廣泛承認並接受的將是面向對象式的編程。 


2.工業界目前最流行的面向對象編程語言就是C++和Java。所以基本上鎖定這兩個方向就可以了。而且完全可以同時掌握。


3.掌握Java的精華特性而且一定要知道爲什麼。比如,Interface和multi-thread。用interface是更好的多繼承的模型,而多線程則是設計到語言一級的重要特性。要完全理解interface是爲什麼,用多線程又有幾種常用的編程模型。


4.理解了語言的特性是爲什麼了之後,就可以試着上升到設計這個層次,畢竟學習語言是要用的。目前比較好的開發模式是採用自定向下的面向對象的設計,加上MVC的模式(你可以看一下java私塾的課程內容)。首先要找出最頂層的對象(這往往是最難的),然後一層一層往下遞歸,記住每次應符合7+/-2的原則,因爲我們人的短記憶就是這樣。一般有圖形用戶界面的應從界面開始設計。


5.有了基本設計模型後,可以學一些設計模式(Design Pattern)。這是目前證明很有效的。比如體系結構模式(Layering分層,Pipe/Filter管道或過濾器),設計模式(有很多,比如對象池Object Pool、緩衝池Cache等),編程模式(比如Copy-on-Write)。懂了這些模式之後,就會對系統的整體結構有很好的把握,而學術上也有傾向一個系統完全可以由各種模式組合而成。前面提到的MT實際上就有好幾種模式,掌握後就不用自己花很多時間去試了。另外一個很重要的領域就是並行和分佈式計算領域,大概有20種左右。


6.接下來就不能紙上談兵了,最好的方法其實是實踐。一般教科書上的例子並不能算是實踐,只能算是讓你掌握語言特性用的。而提倡做實際的Project也不是太好,因爲你還沒有熟練的能力和思想去綜合各種技術,這樣只能是你自己越來越迷糊。我認爲比較好的方法是找一個好的公司或是找一個好的培訓學校,找的培訓學校項目一定要有實際的商業意義!順便說一句,做的項目絕對不要只是幾個模塊,要完整!讓招聘的技術人員感覺是真正的開發項目,還是真正的商用項目


7.結合前面學到的設計模式你就可以很好的理解這些經典的 例子。並且自己可以用他來實現一些簡單的系統。如果可以對他進行進一步的修改,找出你覺得可以提高性能的地方,加上自己的設計,那就更上一個層次了,也就會真正地感到有所收穫。


8.好象以上談的跟Java沒什麼關係,其實我們早就應該從單純的學習語言到真正的學習好編程的領域。學習技術是沒有止境的,你學習第一種語言可能要四個月到半年是最合理的時間,以後每種語言都不應該超過兩個月,否則你會覺得學習語言是包袱,是痛苦。


9.學習是爲了用的,是爲了讓你的程序產生價值,把握住這個原則會比較輕鬆點。


發佈了43 篇原創文章 · 獲贊 51 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章