從一個自學狂人的角度,我能給你比較有限但很實用的建議:
1. 若是 .Net 你是剛入門, 建議轉學 JavaWeb, 我對學習何種平臺並沒有偏見,而是自學須要大量的參考資料, Java 的學習資料,不管是視頻仍是電子書都要遠多於 .Net,這是個很實際的問題,你能夠去電驢上艘一下資料,對比一下便見分曉,我看過網上全部能夠找到的視頻教程,若是須要推薦,請私信。
2. 自學所需的視頻教程必定要成體系,並且每部分最好是完整的,不然,你可能學到某個階段發現剩下的視頻尚未發佈(萬惡的培訓機構都愛玩兒這個伎倆),也可能某個階段只學了通常發現沒有後續視頻了,在選擇視頻教程前,你須要 .Net 或 JavaWeb 完整的學習流程圖,根據每階段尋找對應的視頻教程按部就班。
3. 若是你的英文足夠好,在看視頻教程的時候必定要搭配英文電子書(文字版的,方便搜索),爲何這麼作? 在我看過的多達 50G 的視頻教程裏,講課的老師就算技術再牛,也有講的模糊的地方,甚至講錯的地方,甚至是忽悠你的地方!!這時候,你須要的可能不僅是 Google 和 StackOverflow, 你須要與此配套的英文電子書, 首推 Manning 和 O'Reilly 出版的書。
4. 報班的人通常有兩個考慮:(1)基本上四個月速成(2)有老師帶着作項目,最後還能推薦工做。
既然你決定花一年時間安心學習了, 那就不必報班了, 由於自學最大的挑戰不是技術的難度,而是解決問題過程當中的煩躁和寂寞,甚至還有絕望和質疑。
就先說這些吧,須要的話,再補充。
PS: 鑑於不少人都在問怎麼個學習路線,我貼個本身的 Java Web 學習路線,僅供參考, 但絕對夠找工做的了:
1. Java SE 看傳智播客畢向東的(反射那部分搭配着尚學堂馬士兵的看),這部分搭配着《Thinking in Java》 作參考
2. Jdbc 看傳智播客李勇的(其餘老師的忽略), 這部分講的很全,不用看書。
3. Web 開發基礎(Html+CSS+JS) 看傳智播客韓順平的《輕鬆搞定網頁設計(html+css+js)》,講的通常,作入門能夠, 之後工做了還要自學不少, DOM 部分能夠參考《dom 編程藝術》,工做了能夠深刻 JS, 建議參考《Javascript 權威指南》
3.1 學習 Jquery, 能夠看北風網李炎恢的,EasyUI 部分能夠先不看, Jquery 多參考官方 API 就能夠了。
4. Java Web 看傳智播客方立勳的(能夠參考《Head First: Servlet and JSP》), Ajax 部分看王興魁的就夠了。
5. 輕量級 JavaEE 開發(三大框架:Struts2 + Hibernate + Spring), Struts2 和 Spring 都看黎活明的, Hibernate 看湯陽光的,這部分能夠參考《Struts in action》《Spring in Practice》《Hibernate in action》, 中文版的好像有《Struts 權威指南》之類的書。。
此時,能夠試着出去找工做。
6. 學習工做中增值的部分: WebService 、JPA 、Mybatis 等技術, 這個大概8個月後再說。
7. 如今大多數項目都採用構建工具,如 Maven / Gradle / Ivy 等等,這些你不多可以找到教程,能講清楚的也很少,因此我建議你們看 Manning 出版的 《Gradle in Action Benjamin Muschko 2014》之類的書,不要覺得英文的書會浪費你的時間,事實上,當你習慣看英文資料後,你會節省不少時間,至少不會找亂七八糟的中文資料還搞不清楚怎麼回事。
8. 不要覺得你學習過三大框架就真的會用了,工做中你須要更多地參考官方文檔(固然是英文的),例如 Spring Reference, 這樣你就知道不少原理性的東西,能讓你用框架更有自信,能夠參考個人另外一回答:spring有什麼缺點嗎? 多熟悉 J2EE 的規範,如 IOC,適當瞭解 Spring 以外的 IOC 框架,如 Guice 等。
9. 工做中不要什麼都去本身從頭作,有些 Util 代碼徹底可使用 Guava 等類庫來替代,人家的支持泛型和函數式編程,總比你寫的好吧,固然,你能夠學習它的源碼。
10. 對新技術要敏感一些,但不要一味追新,由於你永遠追不上,語言層面的 new feature 你必需要了解,總不能對新特性視而不見吧,你總得知道 JVM 上還有 Scala 和 Groovy 之類的語言吧,強在哪裏呢,用起來爲啥就按麼爽。
11. 重要的永遠都是底層和基礎,大牛永遠都是這麼說,站着說話不腰疼,不過確實如此,你須要在工做之餘,瞭解一下經常使用的算法和理論,你不能期望着不懂 Socket 就直接使用 Netty 那種高度抽象的框架來實現很好的併發。
css