做了5年的Android,我轉Java後臺了!
很多人做Java開發4,5年後,都會感覺自己遇到瓶頸。什麼都會又什麼都不會,如何改變困境,為什麼很多人寫了7,8年還是一個碼農,工作中太多被動是因為不懂底層原理。公司的工作節奏又比較快,難有機會學習架構原理,也沒人教,所以這個時候,學習架構原理,擴充套件思維,對自己以後職業生涯尤為重要。
同樣公司的兩個新人,一個新人一點就通,學東西很快,有的人,學東西很慢,也很痛苦,處處都是新技術。為什麼?因為那個人懂原理,萬物都有規律,掌握了規律學其他東西原理相通,一觸就會,不懂原理就會處處碰壁,學習很慢還很折磨。
很多程式員會有一個苦惱,工作了很久,在公司一味的增刪改查,得不到技術的提高,無緣底層程式碼,只會用不知其原理!有不少朋友問,如何深入學習Java後端技術棧,今天分享一個,網際網路牛人整理出來的Java深入學習路線圖,以及免費學習資料。

一、閱讀原始碼
深入的Java學習,經典原始碼閱讀不可少:

畫外音:大家捫心自問,除了寫業務程式碼,看過多少優秀開原始碼?
二、分散式架構
隨著業務越來越複雜,資料量越來越大,併發量越來越大,單體的架構模式顯然再也無法對應,作為Java後端架構師,高併發+高可用+海量資料的分散式架構體系,是必不可少的:
- 分散式架構原理
- 分散式架構策略
- 分散式中介軟體
- 分散式架構實戰

畫外音:額, 這些分散式理論,是不是感覺零零星星的聽過,而沒有系統的學習過?
三、微服務技術體系
服務分層,微服務架構是架構升級的必由之路,Java技術體系,和微服務相關的技術有哪需要深入學習呢?
- 微服務框架
- Spring Cloud
- Docker與虛擬化
- 微服務架構

畫外音:明明知道Spring Cloud和docker是趨勢,為啥沒有下定決心學習呢?
四、效能優化
作為後端Java技術專家,解決效能問題才真正體現一個架構師的功力。只有深入學習JVM底層原理,Mysql底層優化以及Tomcat調優,做到知其然,知其所以然:
- 效能指標體系
- JVM調優
- Web調優
- DB調優

畫外音:是不是遇到效能問題就無從下手?只能靠瞎打日誌,瞎改程式碼?解決效能問題,不能只靠運氣!
五、典型業務實戰
閱讀完Java原始碼,學習完分散式與微服務架構體系,掌握了效能調優的方法,僅僅做一個ppt架構師怎麼行?
- 使用者中心,單點登入怎麼玩
- 商品,店鋪怎麼玩
- 訂單,支付怎麼玩
- 通知,推送怎麼玩
- 資料分析怎麼玩
- 唯有通過實戰,才能站上華山之巔。

畫外音:是不是遇到效能問題就無從下手?只能靠瞎打日誌,瞎改程式碼?解決效能問題,不能只靠運氣!