到達(dá)內(nèi)學(xué)習(xí)Java的學(xué)員有零基礎(chǔ)的,也有一些是有經(jīng)驗(yàn)的,不同的學(xué)員應(yīng)該掌握不同的學(xué)習(xí)方法,零基礎(chǔ)學(xué)習(xí)Java需要從基礎(chǔ)抓起而且基礎(chǔ)知識(shí)掌握需要牢固,有一定經(jīng)驗(yàn)基礎(chǔ)的學(xué)員參加Java培訓(xùn)顯然零基礎(chǔ)的課程已經(jīng)不適用了,需要選擇適合自己的才高班或者想要提升某一塊的技能等。具體不同基礎(chǔ)的人應(yīng)該如何學(xué)習(xí)Java呢?下面小編為大家分享。
一、零基礎(chǔ)學(xué)習(xí)Java的初學(xué)者
對(duì)于尚未做過(guò)Java工作的同學(xué),包括一些在校生以及剛準(zhǔn)備轉(zhuǎn)行Java的同學(xué)。
1、Java基礎(chǔ)
首先去找一個(gè)Java的基礎(chǔ)教程學(xué)一下,學(xué)習(xí)Java基礎(chǔ)的時(shí)候,應(yīng)該盡量多動(dòng)手,很多時(shí)候,你想當(dāng)然的事情,等你寫(xiě)出來(lái)運(yùn)行一下,你就會(huì)發(fā)現(xiàn)不是這么回事兒,不信你就試試。
學(xué)完以上內(nèi)容以后,你應(yīng)該對(duì)Java有一個(gè)基本的了解了,你可以用Java語(yǔ)言寫(xiě)出一些簡(jiǎn)單的程序,并且你用的是最簡(jiǎn)單的編輯器,比如記事本。
這個(gè)時(shí)候,不要急于進(jìn)入下一部分,留下幾天好好寫(xiě)一些程序,盡可能熟悉這些基礎(chǔ)內(nèi)容。
等你寫(xiě)上幾天程序以后,你往往會(huì)比較迷茫,因?yàn)槟銓?xiě)的東西似乎看起來(lái)毫無(wú)用處,比如實(shí)現(xiàn)一個(gè)簡(jiǎn)單的計(jì)算器,讀取一個(gè)文件等。這個(gè)時(shí)候你就應(yīng)該去學(xué)著寫(xiě)一些讓你覺(jué)得有意思的東西了,所以你應(yīng)該學(xué)習(xí)更多的知識(shí)。
這些內(nèi)容主要是Web開(kāi)發(fā)相關(guān)的內(nèi)容,包括HTML/CSS/JS(前端頁(yè)面)、Servlet/JSP(J2EE)以及Mysql(數(shù)據(jù)庫(kù))相關(guān)的知識(shí)。
它們的學(xué)習(xí)順序應(yīng)該是從前到后,因此最先學(xué)習(xí)的應(yīng)該是HTML/CSS/JS(前端頁(yè)面),你可以試著自己寫(xiě)一些頁(yè)面,當(dāng)然,你可以盡你最大的努力讓它變得最漂亮。這部分內(nèi)容對(duì)于后端Java來(lái)說(shuō),理論上不是特別重要,但至少要達(dá)到可以自己寫(xiě)出一些簡(jiǎn)單頁(yè)面的水平。
接下來(lái),你需要學(xué)習(xí)的是Servlet/JSP(J2EE)部分,這部分是Java后端開(kāi)發(fā)必須非常精通的部分,因此這部分是這三部分中最需要花精力的,而且這個(gè)時(shí)候,你要學(xué)會(huì)使用開(kāi)發(fā)工具,而不能再使用記事本了,可以選擇eclipse。
當(dāng)你下載安裝好eclipse以后,請(qǐng)按照教程一步一步去學(xué)習(xí),一定要多動(dòng)手。
最后一步,你需要學(xué)會(huì)使用數(shù)據(jù)庫(kù),mysql是個(gè)不錯(cuò)的入門選擇,而且Java領(lǐng)域里主流的關(guān)系型數(shù)據(jù)庫(kù)就是mysql。這部分一般在你學(xué)習(xí)Servlet/Jsp的時(shí)候,就會(huì)接觸到的,其中的JDBC部分就是數(shù)據(jù)庫(kù)相關(guān)的部分。你不僅要學(xué)會(huì)使用JDBC操作數(shù)據(jù)庫(kù),還要學(xué)會(huì)使用數(shù)據(jù)庫(kù)客戶端工具,比如navicat,sqlyog,二選一即可。
3、開(kāi)發(fā)框架
當(dāng)你學(xué)會(huì)以上內(nèi)容以后,這個(gè)時(shí)候你還不足以參加工作,你還需要繼續(xù)深造。公司里為了提高開(kāi)發(fā)的效率,會(huì)使用一些Java
Web框架,因此你還需要學(xué)習(xí)一些開(kāi)發(fā)框架。
目前比較主流的是SSM框架,即spring、springmvc、mybatis。你需要學(xué)會(huì)這三個(gè)框架的搭建,并用它們做出一個(gè)簡(jiǎn)單的增刪改查的Web項(xiàng)目。你可以不理解那些配置都是什么含義,以及為什么要這么做,這些留著后面你去了解。但你一定要可以快速的利用它們?nèi)齻€(gè)搭建出一個(gè)Web框架,你可以記錄下你第一次搭建的過(guò)程,相信我,你一定會(huì)用到的。
還要提一句的是,你在搭建SSM的過(guò)程中,可能會(huì)經(jīng)常接觸到一個(gè)叫maven的工具。這個(gè)工具也是你以后工作當(dāng)中幾乎是必須要使用的工具,所以你在搭建SSM的過(guò)程中,也可以順便了解一下maven的知識(shí)。
在你目前這個(gè)階段,你只需要在網(wǎng)絡(luò)上了解一下maven基本的使用方法即可,一些高端的用法隨著你工作經(jīng)驗(yàn)的增加,會(huì)逐漸接觸到的。
4、找工作
當(dāng)你完成開(kāi)發(fā)框架的學(xué)習(xí)以后,你就該找工作了,在校的找實(shí)習(xí),畢業(yè)的找全職。與此同時(shí),在找工作的同時(shí),你不應(yīng)該停下你的學(xué)習(xí),準(zhǔn)確的說(shuō),是你在以后都不能停下學(xué)習(xí)。
上面這些內(nèi)容你只是囫圇吞棗的學(xué)會(huì)了使用,你可以逐步嘗試著去了解更多的東西,網(wǎng)絡(luò)是你最重要的老師。
二、對(duì)于參加工作一年以內(nèi)的同學(xué)
恭喜你,這個(gè)時(shí)候,你已經(jīng)擁有了一份Java的工作。這個(gè)階段是你成長(zhǎng)極快的階段,而且你可能會(huì)經(jīng)常加班。
但是加班不代表你就可以松懈了,永遠(yuǎn)記得我說(shuō)的那句話,從你入行那一刻起,你就要不停的學(xué)習(xí)。在這一年里,你至少需要看完《Java編程思想》這本書(shū)。這本書(shū)的內(nèi)容是幫助你對(duì)于Java有一個(gè)更加深入的了解,是Java基礎(chǔ)的升級(jí)版。
三、對(duì)于參加工作1年到2年的同學(xué)
這部分時(shí)間段的同學(xué),已經(jīng)對(duì)Java有了一個(gè)更加深入的了解。但是對(duì)于面向?qū)ο蟮捏w會(huì)可能還不夠深刻,編程的時(shí)候還停留在完成功能的層次,很少會(huì)去考慮設(shè)計(jì)的問(wèn)題。
于是這個(gè)時(shí)候,設(shè)計(jì)模式就來(lái)了。我當(dāng)時(shí)看的是《大話設(shè)計(jì)模式》這本書(shū),并且寫(xiě)了完整版的設(shè)計(jì)模式博客。因此,建議大家,最多在你工作一年的時(shí)候,必須開(kāi)始寫(xiě)博客,而設(shè)計(jì)模式就是你博客的開(kāi)端。
請(qǐng)記住,我所提的基本都是最低要求,因此不要有任何松懈的心理,否則五年后,你不要去羨慕別人高于你的工資,也不要去羨慕別人進(jìn)入了某公司。
這一年,你必須對(duì)于設(shè)計(jì)模式了如指掌,《大話設(shè)計(jì)模式》可以作為你的開(kāi)端。
此外,設(shè)計(jì)模式并不是你這一年唯一的任務(wù),你還需要看一些關(guān)于代碼編寫(xiě)優(yōu)化的書(shū)。比如《重構(gòu) 改善既有代碼的設(shè)計(jì)》,《Effective
Java》。
總而言之,這個(gè)階段,你的核心任務(wù)就是提高你的代碼能力,要能寫(xiě)出一手優(yōu)雅的代碼。
結(jié)語(yǔ)
以上就是達(dá)妹分享的一位資深Java工程的感想,當(dāng)然,除了以上在Java方面不斷專研以外,達(dá)妹認(rèn)為,還可以利用自己本身Java的優(yōu)勢(shì),轉(zhuǎn)向其他熱門的技術(shù)方向,如大數(shù)據(jù)!
大數(shù)據(jù)現(xiàn)在比起Java來(lái)說(shuō),有著更大的優(yōu)勢(shì),不管是薪資還是前景方面。如果你認(rèn)為自己在Java方面已經(jīng)有瓶頸,那么選擇達(dá)內(nèi)學(xué)習(xí)大數(shù)據(jù)能幫助你在IT行業(yè)有更好的發(fā)展!
Java薪資:
大數(shù)據(jù)薪資:
現(xiàn)在還可以報(bào)名達(dá)內(nèi)5月免費(fèi)訓(xùn)練營(yíng),提前感受大數(shù)據(jù)課程的魅力!
達(dá)內(nèi)大數(shù)據(jù)課程三大優(yōu)勢(shì):
對(duì)比行業(yè)內(nèi)其他的JAVA 大數(shù)據(jù)培訓(xùn)課程,達(dá)內(nèi)的JAVA 大數(shù)據(jù)課程具備以下三大獨(dú)特優(yōu)勢(shì):
JAVAEE深度開(kāi)發(fā)
達(dá)內(nèi)Java
大數(shù)據(jù)課程不僅要讓學(xué)生掌握如何使用框架開(kāi)發(fā)系統(tǒng),而且要深入框架內(nèi)部源代碼,這樣的做法為學(xué)生后續(xù)在企業(yè)通往架構(gòu)師的道路做了很好的鋪墊,學(xué)生可以更加自信的進(jìn)入企業(yè)工作。
互聯(lián)網(wǎng)架構(gòu)
在這個(gè)互聯(lián)網(wǎng)的時(shí)代,每一個(gè)軟件公司都在往互聯(lián)網(wǎng)化的方向發(fā)展,所以掌握了互聯(lián)網(wǎng)架構(gòu)的內(nèi)容等于緊跟時(shí)代,做公司最出色的程序員。
達(dá)內(nèi)Java 大數(shù)據(jù)課程體系在互聯(lián)網(wǎng)架構(gòu)方面涉及比較全面,既有負(fù)載均衡Nginx,也有基于搜索Solr,緩存Redis 等。
當(dāng)學(xué)習(xí)完這些課程以后,已經(jīng)對(duì)互聯(lián)網(wǎng)架構(gòu)有一定實(shí)操和熟練。
大數(shù)據(jù)開(kāi)發(fā)
達(dá)內(nèi)Java大數(shù)據(jù)課程注重底層的學(xué)習(xí),在學(xué)習(xí)hadoop 之前,要通過(guò)一個(gè)項(xiàng)目學(xué)習(xí)hadoop 的底層知識(shí)點(diǎn)。
有NIO,RPC,AVRO 等內(nèi)容,同時(shí)還注重上層應(yīng)用。
既有基于電信的zebra 項(xiàng)目,也有基于電商的大數(shù)據(jù)分析項(xiàng)目讓學(xué)生通過(guò)大數(shù)據(jù)階段的學(xué)習(xí),能夠快速在公司上手開(kāi)發(fā)。
希望本文可以幫助到作為程序猿或即將成為程序猿的你。