有很多人問過我,學習開源項目消息推送平臺austin需要有什麼基礎,我往往會回答:有SpringBoot
基礎就夠了。
我在幾年前總結過從零學習Java
的路線,現在看來也沒有很過時:
Java
基礎:流程控制-->面向對象(包括語法)-->集合-->IO
流-->異常-->多線程-->網絡編程-->反射JavaWeb
基礎:Tomcat
-->XML
/註解->Servlet
-->HTTP
-->Filter
過濾器和監聽器-->AJAX
/JSON
-->數據庫(MySQL
)-->JDBC
- 項目管理工具:
Maven
- 技術框架:
SpringBoot
- 環境&部署:
Linux
和Git
基本命令
有了這些基礎以後,我是建議做一個項目來鞏固所學過的內容。以前的文章可能沒有推薦哪一個項目上手,現在我覺得我的austin
項目是可以排得上號的。
Java開源項目消息推送平臺🔥推送下發【郵件】【短信】【微信服務號】【微信小程序】【企業微信】【釘釘】等消息類型。
如果打開過austin
的Git
倉庫,那你肯定在README
裏看到我列舉了austin
用到的很多技術棧。這或許可能會讓你覺得要學完這些技術棧才能去看austin
,甚至有些人就看到有這麼多技術棧就放棄了。
曾經我初學的時候有過類似的想法:我要學會了這個技術棧,才能使用或者看得懂這個技術棧相關的代碼。現在回看,這種想法是有問題的。
austin
經過我多輪地迭代,它上手的門檻已經非常低了,要啓動austin
只需要依賴mysql
和redis
就能用系統核心功能了,有SpringBoot
基礎的基本一般也是有Mysql
基礎。也許可能沒有Redis
基礎,但我有教程會教你呀!
只要應用能從本地起來,那一切就好說了。有了調試的環境和實際的應用場景去學相關的技術棧,這個成長速度是最快的。
比如,你沒有學過xxl-job
,但你可能知道他是一個分佈式定時任務框架。雖然不知道爲什麼要接入它,以及在生產環境可能是怎麼用的,解決了什麼問題。而austin
接入的每一種技術棧我都說明了爲什麼要用,給出了使用場景,並給出了部署的文檔。
austin
又有本地調試的能力,這時候你只要debug
一下就相當於有了個現成的案例,不用上網去找各種的demo
慢慢調試環境。這個能節約多少時間,應該不用我多說吧?
不要遇到不懂的框架就感到害怕。先去看看這類框架解決的是什麼問題,它們的設計理念是怎麼樣的,剩下的無非就是接入,調用api
到這就已經入了個門了。
至於框架源碼,千萬不要覺得我們會經常看源碼。只要系統沒遇到問題,對其不是特別感興趣,一般我們都不會看源碼實現的。
所以只是入門一個技術框架,挺簡單的。有了環境和現成的應用代碼,那就更快了。
如果想學Java項目的, 強烈推薦我的項目消息推送平臺Austin(8K stars) ,可以用作畢業設計 ,可以用作校招 ,可以看看生產環境是怎麼推送消息的。消息推送平臺🔥推送下發【郵件】【短信】【微信服務號】【微信小程序】【企業微信】【釘釘】等消息類型。