送給 Java 程式設計師的 Spring 學習指南
你好,我是丁雪豐,喜歡寫程式,《玩轉 Spring 全家桶》的作者,曾經翻譯過《Spring Boot 實戰》與《Spring 攻略》兩本書。從 2002 年誤打誤撞開始寫 Java 後,就把這門語言當做自己的主要工作語言了,在此期間各種各樣的框架層出不窮,一路上也見證了這門語言的飛快發展。
Spring 框架早已成為 Java 後端開發事實上的行業標準,如何用好 Spring ,也就成為 Java 程式設計師的必修課之一。
同時,Spring Boot 和 Spring Cloud 的出現,可以幫助工程師更好地基於 Spring 框架及各種基礎設施來快速搭建系統,可以說,它們的誕生又一次解放了大家的生產力。
所以,Spring Boot 和 Spring Cloud 已成為 Spring 生態中不可或缺的一環。想成為一名合格的 Java 後端工程師,Spring Framework、Spring Boot、Spring Cloud 這三者必須都牢牢掌握。
在這裡,我就對 Spring 整體的學習路徑做一個梳理,方便大家查漏補缺。同時,這些內容我在 《玩轉 Spring 全家桶》 這個視訊課程裡面也做了系統的講解。
學習 Spring 的基礎要求
Spring 官網首頁是這麼介紹自己的——“Spring: the source for modern Java”,這也暗示著 Spring 與 Java 有著密切的關係,雖然 Spring 現在也支援其他語言,比如 Groovy 和 Kotlin,但還是建議在學習 Spring 之前先儲備一些基本的 Java 知識,如果能具備以下基礎,則是更好不過了。
Spring 學習路徑
掌握了上面那些基礎之後,你就可以正式踏上 Spring 的學習之旅了。我們通常說的 Spring 主要包括 Spring Framework、Spring Boot 和 Spring Cloud,下面我就分別來看一下它們具體都包含哪些知識點。
1.Spring Framework
大家通常提到的 Spring 其實是指 Spring Framework,它是一個開源的 Java 企業級應用開發框架,提供了一套完整的程式設計與配置模型,降低了應用的開發複雜度,讓開發者能夠更加專注於應用真正的業務邏輯。
2.Spring Boot
隨著 Spring 的發展,它早已從一個輕量級開發框架演變為一個“龐然大物”,從頭開始搭建一個新應用的成本越來越高,充斥著大量的重複工作,有大量新的最佳實踐需要總結並落地。因此,Spring Boot 應運而生,它能幫助開發者輕鬆地創建出具備生產能力的獨立應用,只需很少的配置就能讓大部分功能運作起來。毫不誇張地說,只要能用好 Spring Boot ,一定能夠極大程度地提升開發效率。
3.Spring Cloud
在雲端計算日益普及的今天,微服務架構、雲原生應用等概念也逐步被大家所接受,大家對大規模分散式系統早已司空見慣,這也對開發者提出了更高的要求。Spring Cloud 在 Spring Framework 與 Spring Boot 的基礎之上,為分散式系統的開發提供了一套經過實踐驗證的常見模式,比如服務的發現與註冊、服務的熔斷與限流、服務配置、服務鏈路追蹤等等。基於 Spring Cloud,開發者能夠很快開發出一套分散式系統,以此滿足不斷變化的業務需要。
4. 其他 Spring 專案
除了上面提到的專案,Spring 的大家族中還有很多成員,它們也在各自的領域中不斷為提升開發者的工作效率默默努力著。
上述很多知識點都會在我的視訊課《 玩轉 Spring 全家桶 》(15000+ 程式設計師已經加入學習)中涉及到,整個課程以實戰為主,在基礎的實踐之外,還會涉及一些背後的原理與相關的知識擴充套件。課程中有大量的示例,還有一個貫穿始終的線上咖啡館系統——SpringBucks,包含了下單、製作、派送的步驟,麻雀雖小卻五臟俱全,隨著課程的推進會不斷豐滿,我們會基於 Spring Framework、Spring Boot 和 Spring Cloud 打造一個完整的系統。