學(xué)Java必讀! 今日靈圖
58 2017-04-19
這篇文章已經(jīng)是有數(shù)年“網(wǎng)齡”的老文,不過(guò)在今天看來(lái)仍然經(jīng)典。太多人說(shuō)JAVA不好學(xué)那是因?yàn)椴幻鞔_如何學(xué)習(xí)Java?
本篇文章可以說(shuō)是面對(duì)編程初學(xué)者的一篇指導(dǎo)文章,其中對(duì)于如何學(xué)習(xí)Java的步驟的介紹,很多也適用于開發(fā)領(lǐng)域其他技能的學(xué)習(xí)。
Java-近10年來(lái)計(jì)算機(jī)軟件發(fā)展過(guò)程中的傳奇,其在眾多開發(fā)者心中的地位就如“屠龍刀”、“倚天劍”。
Java是個(gè)平臺(tái),我只想說(shuō)說(shuō)我對(duì)學(xué)好Java的一點(diǎn)看法,希望對(duì)初學(xué)者有所幫助。
1思考一下
學(xué)習(xí)Java之前,先別急,靜下心來(lái)好好想想:
1)你對(duì)學(xué)習(xí)Java是否有興趣?
2)你是否能靜下心來(lái)堅(jiān)持不懈地學(xué)習(xí)?
嗯,這是個(gè)容易但又絕對(duì)不應(yīng)該忽略的問(wèn)題,你確信自己對(duì)Java感興趣、而且又有吃苦的準(zhǔn)備,那你才可能學(xué)好Java!如果具備這兩點(diǎn)條件,就請(qǐng)繼續(xù)往下看……
2準(zhǔn)備一下
請(qǐng)不要把你的學(xué)習(xí)Java之路和其它計(jì)算機(jī)技術(shù)分開看待,技術(shù)的聯(lián)系往往是千絲萬(wàn)縷的,你應(yīng)該掌握一些學(xué)習(xí)Java所涉及的基礎(chǔ)知識(shí),對(duì)于“CLASSPATH要怎么設(shè)置氨、“跪求JDK下載地址”等等問(wèn)題,你不該問(wèn),因?yàn)镮nte上太多答案了,甚至換個(gè)角度說(shuō),你是不是還不適合直接學(xué)習(xí)編程?
1)買本Java學(xué)習(xí)用書。
JDK6正式版剛剛推出,市面上你暫時(shí)買不到JDK6的書籍,但我仍推薦你買一本適合入門的、較新JDK版本的Java書籍,那么,你現(xiàn)在選擇一本講述JDK5的入門書籍還是有條件的。我可以推薦一些入門書,但是我不打算這么做,因?yàn)楹衔铱谖兜?,不一定適合你。但無(wú)論如何,《ThingInJava》絕對(duì)不應(yīng)該作為你入門Java的第一本書籍!
記住,網(wǎng)絡(luò)上學(xué)習(xí)Java的資源很多,但基本不夠系統(tǒng),擁有一本Java入門書籍,是你系統(tǒng)學(xué)習(xí)Java的基矗
2)準(zhǔn)備Java學(xué)習(xí)環(huán)境。
準(zhǔn)備你的學(xué)習(xí)環(huán)境,很簡(jiǎn)單,安裝JDK6,然后用類似UltraEdit、EditPlus的文本編輯器配置你的學(xué)習(xí)環(huán)境,Inte上有很多關(guān)于如何配置的文章。初學(xué)Java,不建議用IDE工具,通過(guò)一行行的敲代碼,你會(huì)碰到很多問(wèn)題,只有這樣,你才能學(xué)會(huì)怎樣解決問(wèn)題,并加深自己對(duì)Java的理解。
準(zhǔn)備好后,開始進(jìn)入激動(dòng)人心的Java學(xué)習(xí)里程吧!
3Java基礎(chǔ)學(xué)習(xí)之路
學(xué)習(xí)Java的過(guò)程雖然辛苦些,但又是處處有精彩!學(xué)習(xí)過(guò)程中的心態(tài)一定要保持專一,網(wǎng)上關(guān)于語(yǔ)言間的“PK”到處都是,別被浮躁影響!認(rèn)準(zhǔn)了Java,你就堅(jiān)持!克服心魔,恒心最終會(huì)給你回報(bào)的。
Java的體系分為JavaSE、JavaEE和JavaME(JDK5.0以前分別叫J2SE、J2EE和J2ME),Java的敲門磚就是JavaSE了,也就是你要入門學(xué)習(xí)的內(nèi)容,不論你日后是選擇哪個(gè)體系領(lǐng)域作為發(fā)展方向,你都得從JavaSE起步。
學(xué)習(xí)JavaSE,打好Java基礎(chǔ);如果想學(xué)JavaEE(對(duì)不起,我不了解JavaME,所以我無(wú)法涉及JavaME的相關(guān)內(nèi)容),對(duì)于AWT、Swing是否要學(xué)習(xí)呢,我個(gè)人是覺(jué)得還是要知道其所以然的,特別是其事件處理模式,我強(qiáng)烈建議初學(xué)者一定要弄清楚,其他具體的開發(fā)就不一定要全面掌握了,畢竟AWT、Swing方面的內(nèi)容足夠用幾本大部頭的書才能描述詳盡;當(dāng)然,如果你的工作就是做AWT、Swing開發(fā),那就另當(dāng)別論了。
I/O、Thread都是基礎(chǔ)之一。
4JavaEE學(xué)習(xí)之路
學(xué)習(xí)了JavaSE,還只是完成“萬(wàn)里長(zhǎng)征”的第一步。
接下來(lái)選擇學(xué)習(xí)JavaEE或是JavaME(或者你還想不斷深入學(xué)習(xí)JavaSE,只要你喜歡,你可以一直深入下去,就像前面所說(shuō)的,我不會(huì)講到JavaME的學(xué)習(xí));估計(jì)選擇JavaEE方面的學(xué)習(xí)者會(huì)多一些,JavaEE所涉及技術(shù)非常多,考慮到初學(xué)者的接受程度,我會(huì)盡量從最常用的角度來(lái)介紹。
學(xué)習(xí)JavaEE,在開發(fā)環(huán)境上不建議再用文本編輯器,我感覺(jué)NetBeans5.5(目前最高正式版本)很適合初學(xué)者,我個(gè)人也很喜歡NetBeans,如果你喜歡用別的IDE如Eclipse,都沒(méi)問(wèn)題,看自己喜歡吧。
4.1學(xué)習(xí)JSP/Servlet
JavaEE最高版本目前是5.0版本。
在JavaEE中,首先要學(xué)習(xí)JSP/Servlet(結(jié)合Tomcat、MySQL)技術(shù),建議JSP1.2/2.X的知識(shí)都要掌握,畢竟現(xiàn)在很多的在用系統(tǒng)都還是基于JSP1.2,學(xué)習(xí)JSP,還必須掌握一些外延技術(shù),如:你還得掌握HTML基礎(chǔ)知識(shí),最好再掌握些JavaScript(目前正火的AJAX技術(shù)之一)、CSS的技術(shù),而了解XML是必不可少的(至少描述性配置信息是通過(guò)XML來(lái)描述的)。在學(xué)習(xí)JSP/Servlet過(guò)程中,應(yīng)該結(jié)合學(xué)習(xí)JDBC、數(shù)據(jù)庫(kù)開發(fā)技術(shù),畢竟絕大多數(shù)JavaWeb項(xiàng)目都是和數(shù)據(jù)庫(kù)緊密結(jié)合的。
4.2學(xué)習(xí)數(shù)據(jù)庫(kù)開發(fā)技術(shù)
這里我想重點(diǎn)說(shuō)一下數(shù)據(jù)庫(kù)開發(fā)技術(shù),數(shù)據(jù)庫(kù)技術(shù)是做業(yè)務(wù)系統(tǒng)必備技能,JavaWeb開發(fā)人員最低程度都應(yīng)該掌握SQL語(yǔ)句的使用!數(shù)據(jù)庫(kù)技術(shù)大體可分為DBA技術(shù)和數(shù)據(jù)庫(kù)開發(fā)技術(shù),對(duì)于開發(fā)而言,應(yīng)側(cè)重?cái)?shù)據(jù)庫(kù)開發(fā)技術(shù),而數(shù)據(jù)庫(kù)基本操作,也是要掌握的。常用數(shù)據(jù)庫(kù)有DB2、Oracle、SQLServer、MySQL等,你可以結(jié)合實(shí)際需要,選擇一種數(shù)據(jù)庫(kù),并花大力氣掌握其開發(fā)技術(shù)。
記住,學(xué)習(xí)數(shù)據(jù)庫(kù)開發(fā)技術(shù)和學(xué)習(xí)JavaEE,是相對(duì)獨(dú)立的,你可以在學(xué)習(xí)JSP/Servlet的同時(shí),學(xué)習(xí)數(shù)據(jù)庫(kù)開發(fā)技術(shù)(如SQL語(yǔ)句等),或者先學(xué)數(shù)據(jù)庫(kù)開發(fā)技術(shù),之后再學(xué)習(xí)JSP/Servlet。
4.3學(xué)習(xí)JavaEE其它開發(fā)技術(shù)
再往后,可以學(xué)習(xí)一些EJB的知識(shí),目前EJB最新版本是3.0,其和前面的2.X版本相比,有較大不同,考慮到目前EJB2.X還有很大的應(yīng)用市場(chǎng),建議結(jié)合學(xué)習(xí)EJB2.X/3.0。在學(xué)習(xí)EJB過(guò)程中,應(yīng)同時(shí)掌握一種企業(yè)級(jí)應(yīng)用服務(wù)器的使用(如WebSphere、Weblogic、SunApplcationServer或JBOSS等,目前SunApplcationServer9.X和JBOSS都可支持EJB3.0)。
之后的學(xué)習(xí)中,再逐漸擴(kuò)展到其他JavaEE技術(shù)。
5之后
等你對(duì)JavaEE有些感悟的時(shí)候,你自然就會(huì)想不斷擴(kuò)展你的知識(shí)面,這時(shí)候你可以學(xué)習(xí)Spring、Hibernate,以及各種Web框架(如Struts、JSF、Webwork或是Tapestry等)。
隨著技術(shù)、經(jīng)驗(yàn)的不斷積累,你會(huì)逐步關(guān)注分析、設(shè)計(jì)等更高層次的知識(shí),這時(shí)候,你可進(jìn)一步學(xué)習(xí)相關(guān)的UML、模式等知識(shí)(積累了一定經(jīng)驗(yàn),你就可以安排自己學(xué)習(xí)這些知識(shí)了)。
總結(jié)
永遠(yuǎn)記住:自始至終,實(shí)踐是學(xué)習(xí)Java技術(shù)歷程中極其重要的一環(huán)。脫離了實(shí)踐,是學(xué)不好技術(shù)的!
Java學(xué)習(xí)、實(shí)踐之路依然沒(méi)有銀彈,況且一步步走來(lái),要學(xué)的東西很多,勤奮是金!
善于利用Inte上眾多的資源,多吸取些別人的經(jīng)驗(yàn)。
目前關(guān)于Java的爭(zhēng)論很多,如“Java正走下坡路”、“Ruby必將取代Java”等論點(diǎn)甚囂塵上,但正如我前面所言,這是一種浮躁的表現(xiàn),Java的前景非常好,特別是Java開源以后!就讓他們?nèi)コ橙グ?,掌握了Java,你就掌握了當(dāng)前最火的技術(shù)。
“梅花香自苦寒來(lái)”,當(dāng)你掌握了扎實(shí)的Java開發(fā)基礎(chǔ),你就能把手中的這把“屠龍刀”、“倚天劍”舞得風(fēng)聲水起!那時(shí),你一定會(huì)有一種成就感。
以上,你大概了解應(yīng)當(dāng)如何學(xué)習(xí)Java了么?大家伙兒加油哦!
請(qǐng)聯(lián)系網(wǎng)站客服,了解詳細(xì)的優(yōu)惠課程信息~
優(yōu)質(zhì)、權(quán)威、便捷、省心
掃一掃
獲取更多福利
獵學(xué)網(wǎng)企業(yè)微信
獵學(xué)網(wǎng)訂閱號(hào)
獵學(xué)網(wǎng)服務(wù)號(hào)