很多網友諮詢學習Java有沒有什麼捷徑,我說“無他,唯手熟爾”。但是JAVA私塾願意將一些經驗寫出來,以便後來者少走彎路,協助別人是最大的快樂嘛!
要想學好Java,首先要知道Java的大致分類。我們知道,自從Sun推出Java以來,就力圖使之無所不包,所以Java發展到現在,按應用來分主要分為三大塊:J2SE,J2ME和J2EE,這也就是SunONE(Open NetEnvironment)體系。J2SE就是Java2的標準版,主要用於案頭應用軟體的編程;J2ME主要應用於嵌入式系統開發,如手機和PDA的編程;J2EE是Java2的企業版,主要用於分布式的網路程式的開發,如電子商務網站,OA系統和ERP系統。J2SE開發案頭應用軟體比起VC,VB,DEPHI這些傳統開發語言來說,優勢好象並不明顯。J2ME對於初學者來說,好象又有點深奧,而且一般開發人員很難有開發環境。所以現在應用最廣泛又最好學的就是J2EE了。J2EE又包括許多組件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要學習起來可不是一兩天的事。
那麼又該如何學習J2EE呢?當然Java文法得先看一看的,I/O包,Util包,Lang包你都熟悉了嗎?然後再從JSP學起。如果你學過HTML,那麼事情要好辦的多,如果沒有,那你快去補一補HTML基礎吧。其實JSP中的Java文法也不多,它更象一個指令碼語言,有點象ASP。然後你就該學一學Servlet了。Servlet就是伺服器端小程式,他負責產生發送給用戶端的HTML檔案。JSP在執行時,也是先轉換成Servlet再啟動並執行。雖說JSP理論上可以完全取代Servlet,這也是SUN推出JSP的本意,可是Servlet用來控制流程程跳轉還是挺方便的,也令程式更清晰。接下來你應該學習一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代碼的混亂方式了,這種方式跟ASP又有什麼區別呢?還好,SUN提供了Javabean可以把你的JSP中的Java代碼封裝起來,便於調用也便於重用。接著就是EJB了,EJB就是Enterprise JavaBean,看名字好象它是Javabean,可是它和Javabean還是有區別的。它是一個體繫結構,你可以搭建更安全、更穩定的公司專屬應用程式。它的大量代碼已由中介軟體(也就是我們常聽到的Weblogic,Websphere這些J2EE伺服器)完成了,所以我們要做的程式碼量很少,大部分工作都在設計和配置中介軟體上。至於JDBC,就不用我多說了,你如果用java編過存取資料庫的程式,就應該很熟悉。最後,Javascript也是大家重點要掌握的,現在所有公司面試幾乎沒有不問Javascript的
好了,對Java和J2EE有了一些基本概念之後,你就應該編一些程式了,千萬不要紙上談兵哦。最好從開始找一些小的程式來寫,大家可以到www.javass.cn上下載一個項目的視頻程式及源碼參考著寫一下!
那麼我書也看了,程式也做了,別人問我的問題我都能解決了,是不是就成為高手了呢?當然沒那麼簡單,這隻是萬裡長征走完了第一步。不信?那你出去接一個項目,你知道怎麼下手嗎,你知道怎麼設計嗎,你知道怎麼組織人員進行開發嗎?你現在腦子裡除了一些散亂的代碼之外,可能再沒有別的東西了吧!這說明你掌所的只是一些基礎的知識,並沒有完全理解!你現在最缺的是實際的工作經驗和編程思想的培養,而不是書本上那些憑空想出來的程式。你應該發現你有一點,書本上的內容你都明白了,但是自已寫東西還是不會,還是要依賴書本!
記得JAVA私塾也曾碰到過一個來培訓的學員,號稱Java都會了,架構也都理解了。其實他現在只是學到了Java的骨架,卻還沒有學到Java的精髓。接下來你得研究設計模式了。設計模式的書大家可以到JAVA私塾的網站www.javass.cn找到資料下載就可以了!設計模式是進階程式員真正掌握物件導向核心思想的必修課。設計模式並不是一種具體"技術",它講述的是思想,它不僅僅展示了介面或抽象類別在實際案例中的靈活應用和智慧,讓你能夠真正掌握介面或抽象類別的應用,從而在原來的Java語言基礎上躍進一步,更重要的是,設計模式反覆向你強調一個宗旨:要讓你的程式儘可能的可重用,MVC結構(把Model-View-Control分離開的設計思想)是必須要研究的,現在很流行的Structs就是它的一種實現方式,不過Structs用起來實在是很繁,相比來說還是webwork2.0好一些。然後你再研究一下hibernate和Spring架構,相信你又會上一個台階。 做完這些,接下來應該做一些實際的項目,不要寫一些貪蛇食啊,坦克大戰這種不實用的項目,要去寫一些有實際應用價值的項目。
轉自:http://java.csdn.net/page/cf63f01d-a375-4ff5-b380-ebab501ef36b