Java是近10年來計算機(jī)軟件發(fā)展過程中的傳奇,其在眾多開發(fā)者心中的地位就如"屠龍刀"、"倚天劍"。Java是個平臺,說說對學(xué)好Java的一點看法,希望對初學(xué)者有所幫助。
一、提前思考
正式開始學(xué)習(xí)之前,好是思考一下這兩個問題:1)你是不是對學(xué)習(xí)Java有興趣?2)你能夠堅持不懈的進(jìn)行學(xué)習(xí)嗎?這是個看起來非常簡單但又不應(yīng)該忽略的問題,你確信自己對Java感興趣、而且又有吃苦的準(zhǔn)備,那你才可能學(xué)好Java!如果具備這兩點條件,就請繼續(xù)往下看……
二、做好準(zhǔn)備
請不要把你的學(xué)習(xí)Java之路和其它計算機(jī)技術(shù)分開看待,技術(shù)的聯(lián)系往往是千絲萬縷的,你應(yīng)該掌握一些學(xué)習(xí)Java所涉及的基礎(chǔ)知識,對于 "CLASSPATH要怎么設(shè)置啊"、"跪求JDK下載地址"等等問題,你不該問,因為Internet上太多答案了,甚至換個角度說,你是不是還不適合直接學(xué)習(xí)編程?
1)買本Java學(xué)習(xí)用書
看書雖然是比較古老的學(xué)習(xí)方式,但是我們依然不能否認(rèn),這依然是系統(tǒng),有效的學(xué)習(xí)方式之一,推薦可以入手一本《 Head First Java 》。
記住,網(wǎng)絡(luò)上學(xué)習(xí)Java的資源很多,但基本不夠系統(tǒng),擁有一本Java入門書籍,是你系統(tǒng)學(xué)習(xí)Java的基礎(chǔ)。
2)準(zhǔn)備Java開發(fā)環(huán)境
安裝好JDK編譯環(huán)境,然后用類似UltraEdit、EditPlus的文本編輯器配置你的學(xué)習(xí)環(huán)境,在公眾號下方菜單,學(xué)習(xí)中心,Java筆記有詳細(xì)的安裝配置教程。
初學(xué)Java,不建議用IDE工具,通過一行行的敲代碼,你會碰到很多問題,只有這樣,你才能學(xué)會怎樣解決問題,并加深自己對Java的理解。準(zhǔn)備好后,開始進(jìn)入激動人心的Java學(xué)習(xí)里程吧!
三、Java學(xué)習(xí)之路
學(xué)習(xí)Java的過程雖然辛苦些,但又是處處有精彩!學(xué)習(xí)過程中的心態(tài)一定要保持專一,網(wǎng)上關(guān)于語言間的"PK"到處都是,別被浮躁影響!認(rèn)準(zhǔn)了Java,你就堅持!克服心魔,恒心終會給你回報的。
Java的體系分為Java SE、Java EE和Java ME(JDK 5.0以前分別叫J2SE、J2EE和J2ME),Java的敲門磚就是Java SE了,也就是你要入門學(xué)習(xí)的內(nèi)容,不論你日后是選擇哪個體系領(lǐng)域作為發(fā)展方向,你都得從Java SE起步。
學(xué)習(xí)Java SE,打好Java基礎(chǔ);如果想學(xué)Java EE,對于AWT、Swing是否要學(xué)習(xí)呢,我個人是覺得還是非常有必要的,特別是其事件處理模式,我強(qiáng)烈建議初學(xué)者一定要弄清楚,其他具體的開發(fā)就不一定要全面掌握了,畢竟AWT、Swing方面的內(nèi)容足夠用幾本大部頭的書才能描述詳盡;當(dāng)然,如果你的工作就是做 AWT、Swing開發(fā),那就另當(dāng)別論了。
I/O、Thread都是基礎(chǔ)之一。
四、Java EE學(xué)習(xí)之路
學(xué)習(xí)了Java SE,還只是完成"萬里長征"的步。
接下來選擇學(xué)習(xí)Java EE或是Java ME(或者你還想不斷深入學(xué)習(xí)Java SE,只要你喜歡,你可以一直深入下去,另外還有Java ME);估計選擇Java EE方面的學(xué)習(xí)者會多一些,Java EE所涉及技術(shù)非常多,考慮到初學(xué)者的接受程度,我會盡量從常用的角度來介紹。
學(xué)習(xí)Java EE,在開發(fā)環(huán)境上不建議再用文本編輯器,我感覺Eclipse很適合初學(xué)者,也有人喜歡NetBeans,如果你喜歡用別的IDE,都沒問題,看自己喜歡吧。
1)學(xué)習(xí)JSP/Servlet
在Java EE中,首先要學(xué)習(xí)JSP/Servlet(結(jié)合Tomcat、MySQL)技術(shù),建議JSP1.2/2.X的知識都要掌握,畢竟現(xiàn)在很多的在用系統(tǒng)都還是基于JSP,學(xué)習(xí)JSP,還必須掌握一些外延技術(shù)。如:你還得掌握HTML基礎(chǔ)知識,好再掌握些Javascript(目前正火的AJAX技術(shù)之一)、CSS3的技術(shù),而了解XML是必不可少的(至少描述性配置信息是通過XML來描述的)。在學(xué)習(xí)JSP/Servlet過程中,應(yīng)該結(jié)合學(xué)習(xí) JDBC、數(shù)據(jù)庫開發(fā)技術(shù),畢竟絕大多數(shù)Java Web項目都是和數(shù)據(jù)庫緊密結(jié)合的。
2)學(xué)習(xí)數(shù)據(jù)庫開發(fā)技術(shù)
這里我想重點說一下數(shù)據(jù)庫開發(fā)技術(shù),數(shù)據(jù)庫技術(shù)是做業(yè)務(wù)系統(tǒng)必備技能,Java Web開發(fā)人員低程度都應(yīng)該掌握SQL語句的使用!數(shù)據(jù)庫技術(shù)大體可分為DBA技術(shù)和數(shù)據(jù)庫開發(fā)技術(shù),對于開發(fā)而言,應(yīng)側(cè)重數(shù)據(jù)庫開發(fā)技術(shù),而數(shù)據(jù)庫基本操作,也是要掌握的。常用數(shù)據(jù)庫有DB2、Oracle、SQL Server、MySQL等,你可以結(jié)合實際需要,選擇一種數(shù)據(jù)庫,并花大力氣掌握其開發(fā)技術(shù)。記住,學(xué)習(xí)數(shù)據(jù)庫開發(fā)技術(shù)和學(xué)習(xí)Java EE,是相對獨立的,你可以在學(xué)習(xí)JSP/Servlet的同時,學(xué)習(xí)數(shù)據(jù)庫開發(fā)技術(shù)(如SQL語句等),或者先學(xué)數(shù)據(jù)庫開發(fā)技術(shù),之后再學(xué)習(xí)JSP/Servlet。
3)學(xué)習(xí)Java EE其它開發(fā)技術(shù)
再往后,可以學(xué)習(xí)一些EJB的知識。在學(xué)習(xí)EJB過程中,應(yīng)同時掌握一種企業(yè)級應(yīng)用服務(wù)器的使用(如 WebSphere、Weblogic、Sun Applcation Server或JBOSS等,目前Sun Applcation Server 9.X和JBOSS都可支持EJB 3.0)。
之后的學(xué)習(xí)中,再逐漸擴(kuò)展到其他Java EE技術(shù)。
五、之后
等你對Java EE有些感悟的時候,你自然就會想不斷擴(kuò)展你的知識面,這時候你可以學(xué)習(xí)Spring、Hibernate,以及各種Web框架(如Struts、JSF、Webwork或是Tapestry等)。
隨著技術(shù)、經(jīng)驗的不斷積累,你會逐步關(guān)注分析、設(shè)計等更高層次的知識,這時候,你可進(jìn)一步學(xué)習(xí)相關(guān)的UML、模式等知識(積累了一定經(jīng)驗,你就可以安排自己學(xué)習(xí)這些知識了)。
永遠(yuǎn)記住:自始至終,實踐是學(xué)習(xí)Java技術(shù)歷程中極其重要的一環(huán)。脫離了實踐,是學(xué)不好技術(shù)的!Java學(xué)習(xí)、實踐之路需要一步步走來,要學(xué)的東西很多,勤奮是金!善于利用Internet上眾多的資源,多吸取些別人的經(jīng)驗。
目前關(guān)于Java的爭論很多,如"Java正走下坡路"、"Ruby必將取代Java"等論點甚囂塵上,但正如我前面所言,這是一種浮躁的表現(xiàn),Java的前景非常好,特別是Java開源以后!就讓他們?nèi)コ橙グ?掌握了Java,你就掌握了當(dāng)前火的技術(shù)"梅花香自苦寒來",當(dāng)你掌握了扎實的Java開發(fā)基礎(chǔ),你就能把手中的這把"屠龍刀"、"倚天劍"舞得風(fēng)聲水起!那時,你一定會有一種成就感。以上,你大概了解應(yīng)當(dāng)如何學(xué)習(xí)Java了么?大家伙兒加油哦!