JavaWeb開(kāi)發(fā)全棧技能——你需要的學(xué)習(xí)路線圖

鑒于很多人都在問(wèn)怎么個(gè)學(xué)習(xí)路線,我貼個(gè) Java Web 學(xué)習(xí)路線,僅供參考,但絕對(duì)夠找工作的了, 如下,都是可以免費(fèi)找到的教程(請(qǐng)一定驗(yàn)證是否完整),拼湊起來(lái)差不多剛夠?qū)W習(xí) Java Web 了,只是銜接起來(lái)會(huì)有些不連貫,畢竟不是一個(gè)機(jī)構(gòu)講的。

Java SE參考書(shū)籍:

參考視頻:傳智畢向東、尚學(xué)堂馬士兵、圣思園張龍的 JavaSE 視頻

《Thinking in Java》 ,只適合參考,但不適合做入門(mén)書(shū),作者在官網(wǎng)提供了免費(fèi)電子版,鏈接我就不放了,自己找

《Head First Java》,生動(dòng)有趣,入門(mén)階段時(shí)間充足的話,建議翻翻

《Java All-In-One for Dummies》,見(jiàn)名知意,就是給新手看的書(shū),自然特別啰嗦特別厚,建議用作參考,很詳細(xì)

2. 數(shù)據(jù)庫(kù)

參考視頻:

傳智劉道成的 MySQL 視頻教程

傳智韓忠康的 MySQL 視頻教程

以上兩個(gè)課程的講師都是講 PHP 的,所以視頻教程中會(huì)提到一些 PHP 內(nèi)容,忽略就是了

參考書(shū)籍:

《MySQL Cookbook》,僅適合做參考

《SQL All-In-One for Dummies》,延續(xù)了 Dummies 系列一貫的風(fēng)格,冗余而詳盡,適合查閱

建議:

先學(xué) MySQL,然后對(duì)比學(xué)習(xí) SQL Server 和 Oracle

畢竟主流數(shù)據(jù)庫(kù)都實(shí)現(xiàn)了 SQL 標(biāo)準(zhǔn),區(qū)別只體現(xiàn)在各自提供的功能上

2.1 JDBC

參考視頻:

傳智李勇的(其他老師的忽略)JDBC 視頻教程, 這部分講的很全,基本不用看書(shū)

參考書(shū)籍:

《Core Java》 的 JDBC 章節(jié)還不錯(cuò)

3. HTML、CSS、JS

參考視頻:

傳智韓順平的《輕松搞定網(wǎng)頁(yè)設(shè)計(jì)(html+css+js)》,講的一般,做入門(mén)湊合

妙味課堂的 HTML + CSS + JS,國(guó)內(nèi)算講的不錯(cuò)的,當(dāng)然內(nèi)容有點(diǎn)多,需要花更多時(shí)間

參考書(shū)籍:

DOM 部分可以參考《DOM 編程藝術(shù)》

深入 JS 建議參考《Javascript 權(quán)威指南》,原版更好,即:《Javascript: The Definitive Guide》,經(jīng)典的犀牛書(shū):

3.1 學(xué)習(xí) JQuery

參考視頻

北風(fēng)網(wǎng)李炎恢講的不錯(cuò),通俗易懂,貼近實(shí)戰(zhàn)

圣思園張龍講的也不錯(cuò),更多原理,例如:JS 的繼承和作用域鏈等等,很少有培訓(xùn)班能講到

參考書(shū)籍

JQuery 多參考官方 API,google 關(guān)鍵詞 "jquery documentation" 即可

JQuery 的作者 John Resig 寫(xiě)過(guò)一本 javascript 書(shū),質(zhì)量很好,有興趣的可以參考下:

3.2 EasyUI

這部分可以先不看,javascript 和 jquery 學(xué)的好,學(xué)這個(gè)沒(méi)難度,一天的事兒

EasyUI 國(guó)內(nèi)使用特別廣泛,但國(guó)外似乎沒(méi)見(jiàn)過(guò)用這個(gè)的,可能是因?yàn)?UI 比較丑吧。。

EasyUI 官方文檔和 Demo 基本足夠,但官網(wǎng)經(jīng)常被墻,請(qǐng)自備梯子

3.3 ExtJS

對(duì) javascript 的基礎(chǔ)要求比較高,我不建議初學(xué)就接觸,可以在深入 JS 的機(jī)制后再學(xué)習(xí)

參考書(shū)籍:《ExtJS in Action》

3.4 Ajax

參考視頻:傳智王興魁老師的視頻教程

之前提到的 javascript 和 jquery 課程里,也都提到了 ajax 的內(nèi)容

必要的話,請(qǐng)自行搜索 JQuery 對(duì) Ajax 的支持

4. Java Web

參考視頻:傳智播客方立勛的 JavaWeb 視頻教程

參考書(shū)籍:《Head First: Servlet and JSP》

很形象的一本書(shū),圖示很多,理解起來(lái)很舒服

雖然 08 年出版的,但并不過(guò)時(shí)

5. 輕量級(jí) JavaEE 開(kāi)發(fā)(所謂的 SSH)

Struts2

《Struts in Action》

《Apache Struts 2 Web Application Development - Dave Newton》 質(zhì)量略低,做參考挺不錯(cuò)的,按照知識(shí)點(diǎn)劃分的,查閱起來(lái)也很方便

中文版好像有《Struts 權(quán)威指南》之類(lèi)的書(shū)

參考視頻:傳智黎活明、尚學(xué)堂馬士兵、圣思園張龍的 Struts2 視頻教程

參考書(shū)籍:

Spring

參考視頻:動(dòng)力節(jié)點(diǎn)王勇、傳智黎活明的 Spring 視頻教程

培訓(xùn)班講的都是 Spring 基礎(chǔ),更多內(nèi)容需要參照 Spring 官方的 reference,寫(xiě)的比書(shū)還好

參考書(shū)籍:《Spring in Practice》

Hibernate

《Hibernate in action》

《Java Persistence with Hibernate 1st Edition 2006》,Hibernate 作者主編,雖然是 2006 年出版的,但核心內(nèi)容講的很全面,非常值得參考

《Java Persistence with Hibernate 2nd Edition 2015.10》,最近到 Manning 官網(wǎng)發(fā)現(xiàn)第二版已發(fā)布,粗略看了下,全書(shū)以 JPA 為主線,Hibernate 特色做補(bǔ)充,隨書(shū)案例也是很不錯(cuò)的,可能是為 hibernate 5 做的更新,畢竟是個(gè)大版本,挺多變化的

參考視頻:傳智湯陽(yáng)光(推薦)、尚學(xué)堂馬士兵(經(jīng)典但太老)的 Hibernate 視頻教程

參考書(shū)籍:

此時(shí),基本企業(yè)開(kāi)發(fā)技術(shù)都學(xué)過(guò)了,可以試著找工作,實(shí)習(xí)沒(méi)問(wèn)題的,只是缺點(diǎn)項(xiàng)目經(jīng)驗(yàn)罷了

6. 自動(dòng)構(gòu)建,現(xiàn)在大多數(shù)項(xiàng)目都采用構(gòu)建工具,但對(duì)應(yīng)教程很稀少,能講清楚的也不多

常見(jiàn)構(gòu)建工具: Maven / Gradle / Ant + Ivy 等

Gradle 可以參考 《Gradle in Action - Benjamin Muschko 2014》

Maven 可以參考《Maven 實(shí)戰(zhàn)》,沒(méi)錯(cuò),是為數(shù)不多寫(xiě)的也不錯(cuò)的國(guó)產(chǎn)書(shū)

Ant 常常和 Ivy 搭配使用,但現(xiàn)在一般使用 Maven 就足夠了,所以可以不學(xué)習(xí),想了解的可以參考官方文檔

7. 我的忠告:

在培訓(xùn)班講課的老師們,當(dāng)年也都是自學(xué)過(guò)來(lái)的(他們那個(gè)年代還沒(méi)有軟件培訓(xùn)班呢),從這個(gè)角度說(shuō),自學(xué)并非那么不現(xiàn)實(shí),和人有關(guān),和學(xué)習(xí)環(huán)境關(guān)系不大

如果你決心花一年時(shí)間學(xué)習(xí),那就沒(méi)必要報(bào)班了, 因?yàn)樽詫W(xué)最大的挑戰(zhàn)不是技術(shù),而是解決問(wèn)題過(guò)程中的煩躁、絕望和質(zhì)疑

不要以為英文的書(shū)會(huì)浪費(fèi)你的時(shí)間,事實(shí)上,當(dāng)你習(xí)慣看英文資料后,你會(huì)節(jié)省很多時(shí)間,至少不會(huì)找亂七八糟的中文資料還搞不清楚怎么回事

工作中多參考官方文檔,不要以為學(xué)過(guò)了就會(huì)用了,好多細(xì)節(jié)不是老師能夠教給你的

Spring

Guice

例如 Spring Reference, 里面有很多原理性的東西,能讓你使用起來(lái)更有自信

熟悉 Spring 的,可以參考我的另一回答:spring有什么缺點(diǎn)嗎?

多熟悉 J2EE 的規(guī)范,如 CDI,適當(dāng)了解規(guī)范的其他實(shí)現(xiàn)及其規(guī)范之外的特色

工作中不要什么都去自己從頭做,有些功能完全可以使用第三方類(lèi)庫(kù)實(shí)現(xiàn),例如

Guava ,支持泛型和函數(shù)式編程,源碼也值得學(xué)習(xí)

Apache Commons,這個(gè)太常見(jiàn)了,有很多功能不同的組件

對(duì)新技術(shù)要敏感一些,但不要一味追新,因?yàn)槟阌肋h(yuǎn)追不上,語(yǔ)言層面的 New Feature 要多少會(huì)用,也能說(shuō)得上來(lái)優(yōu)劣, 此外,JVM 上還有 Scala 和 Groovy 之類(lèi)的語(yǔ)言,可以適當(dāng)了解下

重要的永遠(yuǎn)都是底層和基礎(chǔ),大牛永遠(yuǎn)都是這么說(shuō),站著說(shuō)話不腰疼,不過(guò)確實(shí)如此,工作之余,了解一下常用的算法和理論,你不能指望自己不懂 TCP、HTTP、Socket 就直接使用 Netty 那種高度抽象的框架來(lái)實(shí)現(xiàn)很好的并發(fā)。

想系統(tǒng)學(xué)習(xí)可以參考以下學(xué)習(xí)路線圖

偶爾我會(huì)看到入門(mén)的人問(wèn)如下幾個(gè)問(wèn)題,如果你問(wèn)了,該好好反省。

問(wèn)題:誰(shuí)有 CSDN 賬號(hào)啊,幫忙下個(gè)資料?

點(diǎn)評(píng):CSDN 上能有什么好東西呢,竟然有人問(wèn)我找 Spring 的幫助文檔,說(shuō)是只有 CSDN 上有中文版本,我都無(wú)語(yǔ)了,你既然選擇了 Java 就不要逃避英文,任何時(shí)候都要首選英文文檔,而且,CSDN 上的東西翻譯質(zhì)量亂七八糟,本來(lái)國(guó)外免費(fèi)提供的東西它卻要積分下載,不必理會(huì),直接去官網(wǎng)即可。

問(wèn)題:這個(gè)問(wèn)題怎么回事啊,求大神幫助。。最好遠(yuǎn)程。。

點(diǎn)評(píng):大神沒(méi)空搭理你,沒(méi)人愿意免費(fèi)為你解答一個(gè)連描述都讓人看不懂的問(wèn)題,甚至幫你遠(yuǎn)程,再有,大神這個(gè)詞會(huì)讓老手覺(jué)得很別扭,讓人感覺(jué)你很慫,不適合做軟件。

問(wèn)題:百度找不到答案,誰(shuí)能給個(gè) Demo 啊

點(diǎn)評(píng):做技術(shù)用 Google, 不解釋?zhuān)硗猓瑒e以為有 Demo 你就能快速學(xué)會(huì)什么東西,那只能讓你快速黏貼過(guò)來(lái)應(yīng)付差事,留下的是亂七八糟的體系和原理不清楚,所以,請(qǐng)自己有個(gè)度。

關(guān)于筆記

寫(xiě)程序的如果不會(huì)記筆記,就真的效率很低了,別告訴我你是用 Word 記筆記的,現(xiàn)在一般都使用 Markdown 記筆記(Sublime + MarkdownExtended),不知道的自己去 Google, 具體效果如下圖:

這么寫(xiě)筆記

預(yù)覽如下:

自學(xué) V.S 報(bào)班

自學(xué)者的疑慮:

如果是上班族一天三、四個(gè)小時(shí)的學(xué)習(xí)時(shí)間要多久才能達(dá)到可以就業(yè)的水平?

就你看來(lái),自學(xué)和報(bào)班這兩種方式的優(yōu)勢(shì)與劣勢(shì)各是什么?

上班族自學(xué)時(shí)間必然很長(zhǎng),從時(shí)間、機(jī)會(huì)成本考慮,值不值?

自學(xué)所需的視頻教程一定要成體系,而且每部分最好是完整的,否則,你可能學(xué)到某個(gè)階段發(fā)現(xiàn)剩下的視頻還沒(méi)有發(fā)布,也可能某個(gè)階段只學(xué)了一般發(fā)現(xiàn)沒(méi)有后續(xù)視頻了,在選擇視頻教程前,你需要 .Net 或 JavaWeb 完整的學(xué)習(xí)流程圖,根據(jù)每階段尋找對(duì)應(yīng)的視頻教程循序漸進(jìn)。

如果你的英文足夠好,在看視頻教程的時(shí)候一定要搭配英文電子書(shū)(文字版的,方便搜索),為什么這么做? 在我看過(guò)的多達(dá) 50G 的視頻教程里,講課的老師就算技術(shù)再牛,也有講的模糊的地方,甚至講錯(cuò)的地方,甚至是忽悠你的地方?。∵@時(shí)候,你需要的可能不只是 Google 和 StackOverflow, 你需要與此配套的英文電子書(shū), 首推 Manning 和 O'Reilly 出版的書(shū)。

報(bào)班的人一般有兩個(gè)考慮:

基本上四個(gè)月速成,省心,不用操心軟件、文檔、路線、課程等等

有老師帶著做項(xiàng)目,最后還能推薦工作。

最后:自學(xué)有自學(xué)的好處,報(bào)班有報(bào)班的好處。關(guān)鍵在于你怎么選擇。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 這篇文章是為了介紹自己自學(xué)用過(guò)的Java視頻資料。全部來(lái)自傳智播客旗下的黑馬程序員。也感謝傳智播客放出這么多優(yōu)質(zhì)的...
    bravo1988閱讀 3,144評(píng)論 1 5
  • 吃了兩塊蜀道香肉脯有感,所有的壞心情一掃而光~我吃過(guò)的以及還沒(méi)品嘗的美食是我生活的動(dòng)力~豆腐怎么可以這么香勒~~~
    PeeWee閱讀 262評(píng)論 0 0
  • 考慮了無(wú)數(shù)個(gè)夜里,終于還是在深圳機(jī)場(chǎng)起飛了, 似乎沒(méi)當(dāng)年那么激動(dòng)、沒(méi)那種激情、比較現(xiàn)在是出差出現(xiàn)在那座城市里、 黃...
    MISYuan閱讀 562評(píng)論 1 1
  • 做安卓快三年了,從剛開(kāi)始的一個(gè)一個(gè)控件基本屬性學(xué)習(xí),到整個(gè)項(xiàng)目的開(kāi)發(fā),發(fā)現(xiàn)自己學(xué)習(xí)的時(shí)間越來(lái)越少,對(duì)新知識(shí)的渴望雖...
    昵稱(chēng)為空看了看閱讀 229評(píng)論 2 1
  • 你會(huì)發(fā)現(xiàn),隨著教育的越來(lái)越普及,渣男渣女卻越來(lái)越多。原因無(wú)他,一是良心這種東西,是學(xué)校里學(xué)不來(lái)的。第二個(gè),越來(lái)越多...
    我的老師是只貓閱讀 1,091評(píng)論 0 1

友情鏈接更多精彩內(nèi)容