天天看點

Java打怪更新成長學習路線圖,大佬是這樣煉成的!一定要收藏!1、整體規劃接下來,這裡五大塊拆分開來分别給大家介紹。2、JavaSE3、資料庫4、Web 基礎5、經典架構6、分布式/微服務相關7. 小結

技術日新月異,對于初入職場的同學來說,經常會困惑該往那個方向發展,這一點松哥是深有體會的。

網上的資料多如牛毛,但是很多時候我們缺的不是一個資料,而是一個學習規劃!

就是說,做 Java 開發,我們應該從哪裡開始學?應該學習哪些東西?應該按照什麼樣的順序來學?

大二剛開始自學 Java 那會,最大的問題就是不知道該學什麼,以及學習的順序,自己一個人摸索了很長時間,後來才逐漸建立起自己的知識體系。

是以每次有小夥伴問我 Java 的學習規劃時,我都能了解大家所處的困境。

Java 開發涉及到的領域非常多,對于開發者而言要掌握的東西也非常多,初入行的小夥伴甚至覺得這些要掌握的東西非常雜亂,其實不然!所有要學習的東西都是有内在關聯的。

今天就來和大家捋一捋 Java 學習路線圖,一起來看看都有哪些東西需要掌握,以及要按照什麼樣的順序來學習。

1、整體規劃

Java 企業級開發涉及到的技能點實際上非常多,我将其大緻歸為以下五類:

Java打怪更新成長學習路線圖,大佬是這樣煉成的!一定要收藏!1、整體規劃接下來,這裡五大塊拆分開來分别給大家介紹。2、JavaSE3、資料庫4、Web 基礎5、經典架構6、分布式/微服務相關7. 小結

在這個技術棧的基礎上,你可以繼續選擇走全棧道路或者走大資料方向。

有的小夥伴可能會糾結于要全面還是要精通某一方面,其實這個無所謂好壞,關鍵是要看你自己。你是想去大廠做一個某一領域的技術專家,還是想自己獨當一面,自己喜歡的才是最好的。

話說回來,即使你想鑽研某一方面,也不是說這些東西就不用學了,即使精通某一方面,也必然是先廣泛涉獵,再慢慢确定自己的方向。

我大學自學 Java 的時候就是這樣,當我不知道哪些東西重要哪些東西不重要的時候,我就都學,反正大學生有大把時間,我甚至連 Dreamweaver,Fireworks,Flash 三劍客都學了,甚至利用 Dreamweaver 上簡陋的功能做了一個動态網站。

這些東西你說學了沒用嗎?其實不見得。當我學了很多之後,在未來某一天,突然就頓悟了,把這些學過的東西串起來了,有一種醍醐灌頂的感覺。

接下來,這裡五大塊拆分開來分别給大家介紹。

2、JavaSE

先來看我畫的思維導圖:

Java打怪更新成長學習路線圖,大佬是這樣煉成的!一定要收藏!1、整體規劃接下來,這裡五大塊拆分開來分别給大家介紹。2、JavaSE3、資料庫4、Web 基礎5、經典架構6、分布式/微服務相關7. 小結

JavaSE 這塊其實沒啥值得說的,基礎的東西很多年都沒有變化。而且 JavaSE 這塊網上也有很多免費教程,

很多公司,用的 Java8/9/10,實際上還是寫的 JDK1.5 的代碼,但是這并不意味着我們就不用學習了。Java8/9/10/11 中的一些新特性還是有必要去學習下,特别是現在 WebFlux 逐漸被人們重視,一些從 Java8 就開始萌芽的理念與技術還是很有必要掌握一下的。

3、資料庫

先來看我畫的思維導圖:

Java打怪更新成長學習路線圖,大佬是這樣煉成的!一定要收藏!1、整體規劃接下來,這裡五大塊拆分開來分别給大家介紹。2、JavaSE3、資料庫4、Web 基礎5、經典架構6、分布式/微服務相關7. 小結

作為一名 Java 工程師,資料庫的重要性不言而喻,這算是基本功,我們不能老指望着 DBA,畢竟配有 DBA 的公司隻是極少數。有句話叫做“SQL 寫得好,下班下得早”。

當然資料庫也有很多優化方面的問題,但是在大家剛剛開始學習的時候,我其實是不建議去學習資料庫優化、主從、叢集、讀寫分離這些東西的,這些可以等到後面學習微服務的時候再去學習比較合适,在剛學習 Java 沒多久的情況下,就去學習資料庫優化,極有可能讓你對開發這條路打退堂鼓。

4、Web 基礎

先來看我畫的思維導圖:

Java打怪更新成長學習路線圖,大佬是這樣煉成的!一定要收藏!1、整體規劃接下來,這裡五大塊拆分開來分别給大家介紹。2、JavaSE3、資料庫4、Web 基礎5、經典架構6、分布式/微服務相關7. 小結

學習是給自己學的,不能偷懶,是以你看我這裡列出來的知識點比較多,甚至又一些看起來好像過時的技術。

有人會糾結 EasyUI 要不要學,這個有點古老。我的意見是,如果你是在校大學生,那就學,反正有時間;如果你已經工作了,現在查漏補缺,那可以結合公司的技術棧決定要不要學。

其實 EasyUI 也不能算是邊緣化的東西,如果你前端不用 Vue、React 或者 Angular,EasyUI 絕對是一個無法忽視的存在,學習一下 EasyUI ,也能讓我們了解整個前端的一個發展過程。

一般來說,Web 基礎學完其實是可以自己做一些簡單的項目的鞏固一下知識點,這塊網上也有很多開源項目

至于這裡列出來的其他技術點,都是正常技術,

如果你正在入門學習,可以申請加入我的Java技術交流圈:766328863,有什麼問題都可以随手來交流分享,

群檔案我上傳了我做Java這幾年整理的一些學習手冊,面試題,開發工具,PDF文檔書籍教程,需要的話你們都可以自行來擷取下載下傳。

Java打怪更新成長學習路線圖,大佬是這樣煉成的!一定要收藏!1、整體規劃接下來,這裡五大塊拆分開來分别給大家介紹。2、JavaSE3、資料庫4、Web 基礎5、經典架構6、分布式/微服務相關7. 小結

5、經典架構

先來看我畫的思維導圖

Java打怪更新成長學習路線圖,大佬是這樣煉成的!一定要收藏!1、整體規劃接下來,這裡五大塊拆分開來分别給大家介紹。2、JavaSE3、資料庫4、Web 基礎5、經典架構6、分布式/微服務相關7. 小結

這裡涉及到的東西就比較多了,也是學起來最最漫長的一部分。

這裡我主要說說關注的幾個問題。

  • SSH 還要學嗎

我們說的 SSH 一般是指 Spring、Struts2 以及 Hibernate。這三個裡邊,可以确認不用學習的 Struts2,如果你大學剛畢業,進入到一家公司,用 Struts2 做開發,你進去幹了三年,Struts2 用的滾瓜爛熟,出來跳槽卻發現沒有任何優勢,是以我不建議大家在 Struts2 上花時間

至于 Hibernate ,這個我持保留态度。為什麼這麼說呢?

因為 Hibernate 和 Jpa 之間有着千絲萬縷的聯系,Spring Data Jpa 結合 Spring Boot,還是有很多公司在用,而如果你掌握了 Hibernate,在後面使用 Jpa 的時候上手很快

  • 消息中間件學哪個?

就我目前了解到的情況,JavaEE 項目中,RabbitMQ 和 RocketMQ 使用較多,大資料中 Kafka 用的較多,傳統的滿足 JMS 規範的 ActiveMQ 使用較少。是以小夥伴們可以結合這樣一個實際情況選擇合适的消息中間件學習順序。

這個階段的知識點都搞定了,做個畢設肯定是綽綽有餘了,出了學校校門找個實習肯定也夠用了。

6、分布式/微服務相關

先來看我畫的思維導圖:

Java打怪更新成長學習路線圖,大佬是這樣煉成的!一定要收藏!1、整體規劃接下來,這裡五大塊拆分開來分别給大家介紹。2、JavaSE3、資料庫4、Web 基礎5、經典架構6、分布式/微服務相關7. 小結

這一塊,Spring Boot 和 Spring Cloud 是重點,這兩個又分别涉及到諸多知識點:

SpringBoot:

Java打怪更新成長學習路線圖,大佬是這樣煉成的!一定要收藏!1、整體規劃接下來,這裡五大塊拆分開來分别給大家介紹。2、JavaSE3、資料庫4、Web 基礎5、經典架構6、分布式/微服務相關7. 小結

SpringCloud:

Java打怪更新成長學習路線圖,大佬是這樣煉成的!一定要收藏!1、整體規劃接下來,這裡五大塊拆分開來分别給大家介紹。2、JavaSE3、資料庫4、Web 基礎5、經典架構6、分布式/微服務相關7. 小結

學習 Spring Boot 的基礎依然是 SSM,不建議跳過 SSM 直接學 Spring Boot。

Spring Boot 學完之後,也可以做個項目鞏固一下

當你搞定了 SSM、搞定了 Redis、搞定了中間件,你再去學習 Spring Boot 就會發現他是如此簡單!

至于 Spring Cloud,雖然 Netflix 公司的幾個元件已經不打算繼續開源了,但是對于大家而言,我覺得還是有必要去學習一下的,畢竟也不難,花不了多少時間,而且學習這些元件可以幫助大家快速建立一個 Spring Cloud 知識體系。

出了這兩大塊之外,剩下的就不用我多說了。MySQL 的進階我是建議放在這個階段學習的,像資料優化、主從搭建、讀寫分離等,我建議放在這個階段。

7. 小結

上面的都學完之後,你已經可以站在一個比較高的角度來看待 JavaEE 開發了。

這個時候,可以考慮自己是想走 “專” 的道路,當一個技術專家呢,還是想走全棧的道路,以後自己搞個工作室之類的,抑或是想往大資料的方向發展都是可以的。