Java可以用來(lái)做什么?
Java的知識(shí)體系是怎樣的?
自學(xué)Java大約需要多久?
何種方式學(xué)習(xí)Java?
企業(yè)用人要求?
自學(xué)走太多彎路,可能是因?yàn)槲覀冏鍪聸](méi)有方法論。沒(méi)有方法論就難有正確的方向,沒(méi)有正確的方向就意味著努力付之東流。
當(dāng)我們零基礎(chǔ)打算自學(xué)Java的時(shí)候,很多人反應(yīng)是去百度自學(xué)Java,或者去知乎搜自學(xué)Java,找個(gè)高票答案,聽(tīng)信“知乎大V”的話買(mǎi)個(gè)什么《Java核心技術(shù)卷1》、《Java編程思想》、《瘋狂Java講義》等等。然后就是基本沒(méi)入門(mén)就放棄。
百度得到一堆過(guò)時(shí)的Java知識(shí)體系思維導(dǎo)圖或者聽(tīng)信“知乎大V”看書(shū)入門(mén),是大部分初學(xué)者掉進(jìn)的坑。網(wǎng)上亂七八糟的全套資源也讓人眼花繚亂。
無(wú)腦相信別人就是懶的表現(xiàn),我們應(yīng)該主動(dòng)思考,用自己的眼睛辨別這個(gè)世界。
為什么有的人似乎做什么都可以成功?
我們可以觀察下身邊那些優(yōu)秀的人,為什么競(jìng)爭(zhēng)激烈的交換生名額他們可以如愿爭(zhēng)取到?為什么可以實(shí)現(xiàn)必去大廠的愿望,而且可以拿到不止一個(gè)大廠的offer?他們做事往往有正確的方法論,指導(dǎo)思想深藏內(nèi)心,無(wú)論做什么事總是可以在正確的方向上堅(jiān)持下去,良好的自制力是他們必備的素質(zhì)。
總有人喜歡拿智商正常說(shuō)事<<-這是不是一個(gè)偽命題?
我們絕大多數(shù)人身體都是沒(méi)有缺陷的,但是為什么有的人跑的快有的人跑得慢,即使都沒(méi)有經(jīng)過(guò)專(zhuān)業(yè)訓(xùn)練,人也會(huì)存在這種具象的差距。同樣,我們的智商都是正常的,但是人與人之間的學(xué)習(xí)能力、解決問(wèn)題的能力存在明顯的抽象差距。這種差距難以量化,但是可以通過(guò)一些方式展現(xiàn)出來(lái),比如考試分?jǐn)?shù)。
所以每個(gè)人總是兩種狀態(tài),不是在別人前面就是在別人后面,這都很正常。學(xué)習(xí)能力以及解決問(wèn)題的能力都是可以慢慢提升,沒(méi)有人一上來(lái)就順風(fēng)順?biāo)?,學(xué)習(xí)的過(guò)程中也會(huì)遇見(jiàn)許多挫折與迷茫,尤其是那些轉(zhuǎn)行的同學(xué),身上還背負(fù)著許多壓力。無(wú)論你是因?yàn)樽分饍?nèi)心深處的夢(mèng)想而選擇的Java,還是因?yàn)镮T行業(yè)的高薪資,既然選擇了就堅(jiān)定的走下去。
借鑒機(jī)構(gòu)的路線
總結(jié)知識(shí)體系總得有參考,我們可以借鑒幾個(gè)主流機(jī)構(gòu)的Java培訓(xùn)大綱。機(jī)構(gòu)作為以培訓(xùn)生產(chǎn)程序員為生的盈利組織,無(wú)論你對(duì)他們有什么偏見(jiàn)都無(wú)法改變他們比較專(zhuān)業(yè)這個(gè)事實(shí)。
首先貼三個(gè)機(jī)構(gòu)的JavaEE培訓(xùn)大綱網(wǎng)頁(yè):
---傳智黑馬:黑馬JavaEE課程大綱-2019
http://www.itheima.com/course/javaeetext.html
---尚硅谷:尚硅谷JavaEE+大數(shù)據(jù)課程大綱-2019 http://www.atguigu.com/kecheng.shtml
---尚學(xué)堂:尚學(xué)堂Java全生態(tài)課程體系-2019
https://www.bjsxt.com/javaee_curriculum.html
對(duì)比三家機(jī)構(gòu)官網(wǎng),知識(shí)體系基本是一致的:
注:此知識(shí)體系是參照機(jī)構(gòu)官網(wǎng)制作,線下實(shí)際授課內(nèi)容與此是否一致有待研究
簡(jiǎn)單總結(jié):三家機(jī)構(gòu)中,尚硅谷與尚學(xué)堂在最后加了一點(diǎn)大數(shù)據(jù)的教學(xué),尚學(xué)堂與黑馬不再教strus框架,而尚硅谷還有strus框架的教學(xué)。其他略微差異不再贅述。整體來(lái)說(shuō),無(wú)論是基礎(chǔ)部分還是進(jìn)階部分,三家機(jī)構(gòu)的教學(xué)路線及關(guān)鍵知識(shí)點(diǎn)基本一致。如果想要自學(xué),完全可以參考此路線進(jìn)行學(xué)習(xí)。同時(shí)三家機(jī)構(gòu)也在官網(wǎng)貼出了學(xué)習(xí)路線及資料下載網(wǎng)址。
A、傳智黑馬:傳智黑馬推薦自學(xué)路線及免費(fèi)視頻-2019----此網(wǎng)址不再建議參考,部分內(nèi)容已被官方剔除(JavaWeb部分教程已被刪除,基礎(chǔ)部分原先是劉意的)
http://www.itcast.cn/news/20180514/09203170866.shtml
B、傳智黑馬:傳智黑馬Java在線學(xué)習(xí)網(wǎng)址-2019
http://yun.itheima.com/map/22.html
C、尚硅谷:尚硅谷推薦自學(xué)路線及免費(fèi)視頻-2019
http://www.atguigu.com/download.shtml
D、尚學(xué)堂:尚學(xué)堂推薦自學(xué)路線及免費(fèi)視頻-2019
https://www.bjsxt.com/javashipin.html
找資料可以到BCD三個(gè)網(wǎng)頁(yè)查找,而學(xué)習(xí)路線可以參考上圖,也可以參考下他們官網(wǎng)最新的培訓(xùn)大綱(自行選一家機(jī)構(gòu)的大綱路線即可,如黑馬的http://www.itheima.com/course/javaeetext.html)。我當(dāng)時(shí)有參照過(guò)A,可是現(xiàn)在A已經(jīng)跟原來(lái)不一樣了。
各階段教程推薦(僅供參考)
01
JavaSE階段
A、Java基礎(chǔ)視頻_深入淺出精華版_劉意(風(fēng)清揚(yáng))
B、宋紅康2019版_30天搞定Java核心技術(shù)(Eclipse+IDEA版本)
C、黑馬Java基礎(chǔ)教程_2018(IDEA版本)
首先Java基礎(chǔ)階段的內(nèi)容一直沒(méi)什么大的變化,萬(wàn)變不離其宗。主要的變化就是隨著JDK版本的變化,加了一些新特性。A教程質(zhì)量是非常好的,缺點(diǎn)是由于年代原因沒(méi)有講JDK8、9、10的新特性,這個(gè)完全可以最后自己上網(wǎng)補(bǔ)一下。B教程是尚硅谷官方2019新推出的,我沒(méi)看過(guò),但是質(zhì)量應(yīng)該不錯(cuò),基于JDK11,新特性也有講解。C教程沒(méi)看過(guò),不做評(píng)論。
因?yàn)槲铱催^(guò)A,所以首先推薦A。這套教程GUI那天不用學(xué),新特性自己上網(wǎng)補(bǔ)一下。
其次推薦B,尚硅谷出的質(zhì)量有。
自行選一個(gè)。
02
JavaWeb階段
A、JavaWeb視頻教程_王澤(廣陵散)+崔希凡
B、黑馬JavaWeb教程-2018(IDEA版本)
C、黑馬32期內(nèi)含有JavaWeb教程
D、黑馬28期內(nèi)含有JavaWeb教程
A教程在網(wǎng)上好評(píng)較多,但是年代原因沒(méi)有講解BootStrap、jQuery、Linux、redis、maven等。課程內(nèi)容設(shè)置也沒(méi)有新課程科學(xué)。B教程較新,課程內(nèi)容設(shè)置科學(xué),最后以黑馬旅游網(wǎng)作為一個(gè)綜合小項(xiàng)目作為對(duì)JavaWeb部分從前到后的貫穿練習(xí),具體內(nèi)容我沒(méi)有看。C黑馬32期內(nèi)JavaWeb部分課程整體還可以,這部分也有一個(gè)幾天商城項(xiàng)目作為結(jié)束練習(xí)。
眾口難調(diào),此部分教程實(shí)在難以推薦,沒(méi)有一個(gè)十全十美的免費(fèi)教程。也沒(méi)有發(fā)現(xiàn)比較好的尚硅谷JavaWeb教程。如果你不喜歡折騰就用B教程吧,喜歡折騰而且時(shí)間很多的話自己都體驗(yàn)下。
Linux、redis、maven等建議在此階段學(xué)習(xí)。
注:黑馬的mysql教程沒(méi)有講解視圖、存儲(chǔ)、觸發(fā)器等,在后面Oracle數(shù)據(jù)庫(kù)部分講解了
03
主流框架部分
Spring教程:
A、spring教程-尚硅谷版本
B、spring教程-王澤版本(通俗易懂適合入門(mén))
C、黑馬32期內(nèi)劉悅東spring教程
D、297期內(nèi)spring教程
E、黑馬最新IDEA版spring教程
建議先B后A或者直接E,不用全看。的spring教程應(yīng)該是傳智左慈那個(gè),可惜是3.x版本。
Mybatis教程:
A、Mybatis教程-尚硅谷版本
B、Mybatis教程由淺入深_黑馬http://yun.itheima.com/course/289.html
C、297期內(nèi)Mybatis教程
D、黑馬最新IDEA版Mybatis教程
推薦B或D
SpringMVC教程:
A、SpringMVC教程-尚硅谷版本
B、SpringMVC教程由淺入深-黑馬http://yun.itheima.com/course/8.html
C、297期內(nèi)SpringMVC教程
D、黑馬最新IDEA版SpringMVC教程
oracle可以看黑馬的或者尚硅谷的。
這三個(gè)主流框架還是比較重要的,必學(xué),學(xué)好。
其他的知識(shí)點(diǎn)可以在項(xiàng)目中遇到再查缺補(bǔ)漏就可以,例如svn等
04
SSM項(xiàng)目實(shí)戰(zhàn)(科班同學(xué)別看此段)
個(gè)項(xiàng)目很多人喜歡做宜立方或者淘淘,你如果想做黑馬的項(xiàng)目的話,直接上品優(yōu)購(gòu)吧。做電商項(xiàng)目的劣勢(shì)就是企業(yè)知道這個(gè)不是你自己做的,不好寫(xiě)簡(jiǎn)歷。你如果做一個(gè)其他的項(xiàng)目,寫(xiě)在簡(jiǎn)歷上作為實(shí)習(xí)項(xiàng)目還是有可信度的。
尚硅谷流傳在網(wǎng)上的項(xiàng)目主要是硅谷電商跟尚籌網(wǎng)。
做個(gè)項(xiàng)目比較難受,跟著視頻做電商項(xiàng)目的話,簡(jiǎn)歷不好寫(xiě)。有能力的話自己去碼云或者GitHub上找個(gè)沒(méi)有爛大街的好項(xiàng)目搞一搞,簡(jiǎn)歷也容易寫(xiě)一點(diǎn)。如果有學(xué)長(zhǎng)或者朋友在相關(guān)行業(yè)的話,可以讓他們給提供點(diǎn)需求,自己練練手。當(dāng)然每個(gè)公司的項(xiàng)目代碼都是加密的。。。。
項(xiàng)目中如果遇到自己以前沒(méi)學(xué)的技術(shù),可以自行上網(wǎng)查找相關(guān)資料視頻快速入門(mén)。
你做完SSM應(yīng)該試著找了。
05
流行框架
Spring Boot、Spring Cloud、VUE等等。
黑馬最新在線課程以及樂(lè)優(yōu)商城里都有這些框架的快速入門(mén)視頻。尚硅谷相關(guān)的教程比較深入,很多可能是新手暫時(shí)用不到的。大家根據(jù)自己的時(shí)間自行選擇就行,可以先看黑馬的快速入門(mén)視頻。
學(xué)微服務(wù)框架之前必須先學(xué)Spring、Mybatis、SpringMVC
06
微服務(wù)項(xiàng)目
市面上微服務(wù)項(xiàng)目黑馬的居多,其他的沒(méi)注意。黑馬的有十次方、學(xué)成在線、樂(lè)優(yōu)商城等。樂(lè)優(yōu)商城是黑馬大數(shù)據(jù)班的項(xiàng)目。挑一個(gè)自己感興趣的或者自己上GitHub找找有沒(méi)有好項(xiàng)目。主要還是看個(gè)人時(shí)間個(gè)人情況,自行選擇。轉(zhuǎn)行的與科班情況還是不同的。
自學(xué)常見(jiàn)問(wèn)題
自學(xué)的過(guò)程盡量使用教程配套資料,如果自己解決問(wèn)題的能力不是很強(qiáng)就不要瞎折騰。
不要從helloworld就用IDE,跟著教程先用記事本或者文本編輯器,免得學(xué)到最后手寫(xiě)個(gè)單例都gg,連關(guān)鍵字大小寫(xiě)都不知道。
每天記錄學(xué)習(xí)情況,不僅總結(jié)知識(shí)點(diǎn)更要記錄下自己看不懂的地方,方便后面可以回頭再學(xué)。如果有聽(tīng)不懂的地方不要糾結(jié)太久,在Word上記下來(lái),然后繼續(xù)看后面的,過(guò)幾天再回來(lái)看,優(yōu)先建立知識(shí)體系。
學(xué)習(xí)JAVA就像攻城掠地,你的目標(biāo)是一座城一座城的拿下,城里隱藏著幾個(gè)反賊沒(méi)關(guān)系,回頭再來(lái)收拾他。不要在一座城里因?yàn)檎夷硞€(gè)反賊而浪費(fèi)太多時(shí)間。
一天的學(xué)習(xí)過(guò)程:復(fù)習(xí)昨天->學(xué)習(xí)新內(nèi)容->預(yù)習(xí)明天。
遇到的問(wèn)題基本都可以百度解決,搜索很重要,定位問(wèn)題。
三天一反思。
不要過(guò)分的追求找視頻,過(guò)度依賴視頻,視頻是幫助我們?nèi)腴T(mén)并建立知識(shí)體系的,我們后面的對(duì)知識(shí)體系的細(xì)化拓展不可能一直看視頻,看博客看文章的能力也要逐步提升。好的視頻固然重要,但是過(guò)分追求所謂的好視頻那就是舍本逐末。沒(méi)有十全十美的教程,各有優(yōu)點(diǎn)。
磨刀不誤砍柴工,打算使用idea或者eclipse之前系統(tǒng)學(xué)習(xí)下工具怎么用。也就三四個(gè)小時(shí)的時(shí)間。
不要有讓大神帶的想法,真正的大神都很忙,沒(méi)工夫天天指導(dǎo)你,再說(shuō)他又不是你爹。還有就是大神的成長(zhǎng)環(huán)境、市場(chǎng)環(huán)境與現(xiàn)在的情況是不一樣的,很多大神科班出身或者隨著公司的業(yè)務(wù)發(fā)展一起成長(zhǎng)起來(lái)的。自己總結(jié)研究很重要。
敲代碼是看完視頻后自己整理思路然后敲出來(lái),不是照著抄。看懂了不敲跟沒(méi)學(xué)一樣。一定要多敲,光看不敲是不行的。就像沒(méi)有人光看視頻能開(kāi)車(chē)。
經(jīng)常去招聘網(wǎng)站看看公司對(duì)Java技術(shù)人員的招聘要求,尤其注意你的目標(biāo)城市Java招人標(biāo)準(zhǔn)。從一開(kāi)始學(xué)就應(yīng)該經(jīng)常去招聘網(wǎng)站看,而不是要找了才去看。從一開(kāi)始就要經(jīng)??纯磧?yōu)秀簡(jiǎn)歷是怎么寫(xiě)的。及早準(zhǔn)備面試題,而不是學(xué)到最后才開(kāi)始看。各階段重點(diǎn)知識(shí)、面試常見(jiàn)知識(shí)點(diǎn)及早復(fù)習(xí)。刷面試題或者關(guān)注面試考點(diǎn)是為了讓大家抓住重點(diǎn),修復(fù)和完善技術(shù)盲點(diǎn)。不要為了面試而面試,如果只是死記硬背這些面試題,只要面試官再深入追問(wèn)你就gg了。
一邊學(xué)一邊看,不要鉆牛角尖,不要一條道走到黑,及時(shí)修正學(xué)習(xí)方向。
學(xué)習(xí)Java既要有埋頭苦學(xué)的毅力,也要有從宏觀上統(tǒng)籌兼顧的眼光,前后貫穿,方得始終。
小心垃圾機(jī)構(gòu)。一線大城市的大機(jī)構(gòu)質(zhì)量還是不錯(cuò)的。
小心網(wǎng)上到處發(fā)廣告的營(yíng)銷(xiāo)人員,不是賣(mài)資料的就是拉粉絲的。他們的目標(biāo)是營(yíng)銷(xiāo)拉粉絲、點(diǎn)擊量、錢(qián)。營(yíng)銷(xiāo)人員甚至不是Java從業(yè)人員。小心所謂的最新全套教程。垃圾資料滿天飛,好資料都是加密的。
暫時(shí)就想到這些,以后繼續(xù)補(bǔ)充。
最后
正確的方向,得當(dāng)?shù)膶W(xué)習(xí)方法,堅(jiān)定的自制力,持之以恒的努力。
題外話
大學(xué)同學(xué)將是你一生中最可靠穩(wěn)定的人脈,一定多跟同學(xué)相互交流分享。
希望文章能給那些迷茫的同學(xué)做一點(diǎn)點(diǎn)參考,給那些糾結(jié)的同學(xué)一點(diǎn)點(diǎn)思路。因?yàn)樽髡咭彩莻€(gè)菜鳥(niǎo),而且寫(xiě)的比較急,想到什么寫(xiě)什么,所以文章較亂,難免有疏漏,望指正。歡迎大家留言討論,相互學(xué)習(xí)。文中的相關(guān)資料的鏈接將會(huì)在后續(xù)的文章以合適的方式貼上,因?yàn)椴糠仲Y料比較敏感。