答案:是的,學(xué)習(xí)Java一定要學(xué)習(xí)Spring框架。

我從2005年開始學(xué)習(xí)并在開發(fā)中使用Spring框架,見證了Spring框架的成長。下面從我的工作體會(huì)說一說 “必須要學(xué)”的原因吧。

Spring框架已經(jīng)成為Java企業(yè)級(jí)開發(fā)的事實(shí)標(biāo)準(zhǔn)

學(xué)Java是一定會(huì)學(xué)spring么

目前在Java企業(yè)級(jí)開發(fā)領(lǐng)域,Spring框架已經(jīng)成為事實(shí)標(biāo)準(zhǔn)了。

Spring已經(jīng)不是單一的框架,而是一個(gè)生態(tài)系統(tǒng)了。包括了以下組件:

  • Spring Framework (例如:依賴注入DI、AOP ...)
  • Spring Boot
  • Spring Cloud
  • Spring Data
  • Spring Security
  • Spring Batch
  • Spring Social

從上面可以看出,Spring生態(tài)中已經(jīng)提供了企業(yè)級(jí)開發(fā)中大部分應(yīng)用場(chǎng)景的解決方案。

其中Spring Boot可以幫助我們簡化Spring開發(fā),提高開發(fā)效率;Spring Cloud用于分布式微服務(wù)開發(fā);Spring Security則幫助解決了系統(tǒng)中安全部分的設(shè)計(jì)。

Spring框架本身包含了:

  • Dependency Injection依賴注入
  • AOP編程(聲明式事務(wù)處理)
  • Spring MVC 和 RESTful web服務(wù)框架
  • 對(duì)于JDBC, JPA, JMS的基礎(chǔ)支持

學(xué)習(xí)Spring框架不僅能夠?qū)W習(xí)新的思想(IOC,AOP),而且更重要的是能夠解決在企業(yè)開發(fā)中的一些“頭疼”問題,大大簡化開發(fā)。例如:使用AOP簡化事務(wù)處理、使用注解簡化配置等。

學(xué)習(xí)Spring建議的過程是:Spring框架 -> Spring Boot -> Spring Data

學(xué)習(xí)和研究Spring框架是提升開發(fā)能力的重要途徑

學(xué)Java是一定會(huì)學(xué)spring么

學(xué)習(xí)Spring框架過程中,閱讀和研究Spring框架源碼是必經(jīng)之路。

對(duì)于程序員而言,如何提高代碼的開發(fā)能力?其中最重要的方法就是:閱讀框架源代碼,學(xué)習(xí)代碼在設(shè)計(jì)上的優(yōu)雅之處。

框架在設(shè)計(jì)上是體現(xiàn)了“最大限度的重用性、擴(kuò)展性”的。為了達(dá)到這一點(diǎn),代碼設(shè)計(jì)上應(yīng)用了大量設(shè)計(jì)模式、接口化抽象設(shè)計(jì)等。

研究框架代碼能夠幫助程序員提高代碼設(shè)計(jì)能力、提高抽象化分析能力、提高代碼調(diào)試能力等。

Spring框架作為目前Java業(yè)界應(yīng)用最廣泛的框架之一,非常有必要細(xì)心品位。