Spring Boot 為什么這么火火火火火火讽挟?

沒錯 Spring Boot 越來越火了,而且火的超過了我的預期烦租,作為一名行走一線的 Java 程序員延赌,你可能在各個方面感受到了 Spring Boot 的火。

Spring Boot 的火火火火火火

技術(shù)社區(qū) Spring Boot 的文章越來越多叉橱;Spring Boot 相關(guān)的圖文挫以、視頻課程越來越多;使用 Spring Boot 的互聯(lián)網(wǎng)公司越來越多窃祝;現(xiàn)在出去面試 Java 工程師掐松, Spring Boot 已經(jīng)成了必問的內(nèi)容。

一切都在證明,Spring Boot 已經(jīng)成為了 Java 程序員必備的技能大磺。并且可以預見的是未來 Spring Boot 的發(fā)展還會更好泻仙。

那我個人是如何感受到這一點呢?

三年前寫的一個 Spring Boot 入門的文章量没,單篇文章閱讀量超過百萬玉转!在百度指數(shù)上搜索 Spring Boot 關(guān)鍵字,可以看到一個氣勢如虹的增長曲線殴蹄。

2016年究抓,在 Github 上寫了一個 Spring Boot 的開源項目,現(xiàn)在竟有 150000+ Star袭灯,6600 + Fork 刺下,在 Github 上 Star 排名今次于 Spring Boot 官方。

項目名稱:spring-boot-examples??

項目地址:

https://github.com/ityouknow/spring-boot-examples

注:這個開源項目還有很多國際友人參與貢獻稽荧。

Spring 官方也特別特別重視 Spring Boot 橘茉,直接將 Spring Boot 擺放到官網(wǎng)第一的位置上來。

Spring Boot 為什么這么火

作為一個學習使用三年多 Spring Boot 的程序員姨丈,我來試著從我的角度來給大家聊聊 Spring Boot 為什么這么火畅卓,可以在短短幾年內(nèi)給 Java 程序員帶來這么大的變革。

01.?從設(shè)計理念談起

要說到 Spring Boot 為什么這么火蟋恬,就必須得聊聊 Spring Boot 的設(shè)計理念翁潘,正是此設(shè)計理念奠基了Spring Boot 開發(fā)設(shè)計的基準,讓 Spring Boot 走到了今天歼争。

那 Spring Boot 的設(shè)計理念是什么呢拜马?它就是約定優(yōu)于配置(convention over configuration)。

約定優(yōu)于配置并不是一個新概念沐绒,它是一種軟件設(shè)計范式俩莽,很早就應用在軟件架構(gòu)設(shè)計中,它的作用是減少軟件開發(fā)人員需做決定的數(shù)量乔遮,獲得簡單的好處扮超,而又不失靈活性。

只是 Spring Boot 讓這個設(shè)計理念上升了一個層次申眼,Spring Boot 不止在某個功能上實現(xiàn)此設(shè)計理念瞒津,而是整個軟件體系都在踐行約定優(yōu)于配置蝉衣。

Spring Boot 體系將約定優(yōu)于配置的思想展現(xiàn)得淋淋盡致括尸,小到配置文件,中間件的默認配置病毡,大到內(nèi)置容器濒翻、生態(tài)中的各種 Starters 無不遵循此設(shè)計規(guī)則。

Spring Boot Jpa 80% 大部分查詢功能都以約定的方式給與提供,另外 20% 復雜的場景有送,提供另外的技術(shù)手段來解決淌喻,典型的約定優(yōu)于配置的實現(xiàn)。

Spring Boot Starter 雀摘,在項目啟動的時候裸删,根據(jù)約定信息對組件進行加載、初始化阵赠。因此項目中引入了對于的 Starter 之后涯塔,就可以到達開箱即用的效果。

甚至 Spring Cloud 的設(shè)計清蚀,也借鑒了約定優(yōu)于配置的思想匕荸,很多組件都是在啟動時,默認提供了其相關(guān)的功能枷邪,可以讓我們的使用到達很少配置或者零配置榛搔。

02.?Spring Boot 的 Starter 機制

Spring Boot Starter ?是 Spring Boot 的 星辰大海。

正是因為豐富的 Spring Boot Starter ?东揣,讓 Spring Boot 征服了使用各個開源軟件的開發(fā)者践惑,只要 Spring Boot Starter 指向哪個開源軟件,就會讓某個開源軟件變得異常好用嘶卧。

這真的是這樣童本,有一種神筆馬良的感覺(夸張了一點)。

那什么是 Spring Boot Starter 呢脸候?

在 Spring Boot 中穷娱,Starter 是為快速應用開發(fā)提供“一站式服務(wù)”的依賴(Dependency)。Starter 使得開發(fā)人員在開始編寫新的模塊時不需要拷貝樣板式的配置文件运沦、編寫樣板式的代碼泵额,只需要提供最簡單的配置即可開始編程。

Spring Boot Starter 有兩個核心組件:自動配置代碼和提供自動配置模塊及其它有用的依賴携添。也就意味著當我們項目中引入某個 Starter 嫁盲,即擁有了此軟件的默認使用能力,除非我們需要特定的配置烈掠,一般情況下我僅需要少量的配置或者不配置即可使用組件對應的功能羞秤。

Spring Boot 由眾多 Starter 組成,隨著版本的推移 Starter 家族成員也與日俱增左敌。在傳統(tǒng) Maven 項目中通常將一些層瘾蛋、組件拆分為模塊來管理,以便相互依賴復用矫限,在 Spring Boot 項目中我們則可以創(chuàng)建自定義 Spring Boot Starter 來達成該目的哺哼。

Spring Boot Starter 統(tǒng)一了使用不同軟件的編程體驗佩抹。

在沒有使用 Spring Boot Starter 之前,我們需要按照每個開源軟件的特性取董,將對應的組件包集成到我們的開發(fā)項目中棍苹,因為每個組件的設(shè)計理念和開發(fā)團隊都不一致,因此會有很多不同的調(diào)用風格在我們的項目中茵汰。

Spring Boot 強大到很多技術(shù)社區(qū)都主動提供了對應的 Starter 組件枢里,比如 MyBatis 、Apache Camel蹂午、Apache CXF 等等坡垫。隨著 Spring Boot 的發(fā)展?Starter 組件會越來越多。

Spring Boot 非常強大的原因之一就是提供了大量的 Spring Boot Starter 画侣,如此多的“開箱即用” 的依賴模塊冰悠,讓我們在日常開發(fā)中“拿來即用”,以便更加快速和高效專注于業(yè)務(wù)開發(fā)配乱。

03.?Spring Boot 的豪華開發(fā)團隊

我們經(jīng)常會看到在介紹 Spring Boot 的時候有這么一句:Spring Boot 是由 Pivotal 團隊提供的全新框架溉卓。由此我們得知 Spring Boot 是由 Pivotal 團隊所研發(fā),那么 Pivotal 團隊到底是一個什么樣的團隊呢搬泥?其實這里的 Pivotal 團隊是指 Pivotal 公司桑寨。

Pivotal 公司介紹:致力于“改變世界構(gòu)造軟件的方式(We are transforming how the world builds software)”,提供云原生應用開發(fā) PaaS 平臺及服務(wù)忿檩,幫助企業(yè)客戶采用敏捷軟件開發(fā)方法論尉尾,從而提高軟件開發(fā)人員工作效率、減少運維成本燥透,實現(xiàn)數(shù)字化轉(zhuǎn)型沙咏、IT 創(chuàng)新,并最終實現(xiàn)業(yè)務(wù)創(chuàng)新班套。

Pivotal 公司可謂是大牛云集肢藐,公司研發(fā)的產(chǎn)品有: Spring 以及衍生框架、緩存中間件 Redis吱韭、消息隊列框架 RabbitMQ吆豹、數(shù)據(jù)引擎產(chǎn)品 Greenplum,還有 Tomcat理盆、Groovy 里的一些頂級開發(fā)者痘煤,DevOps 理論的提出者都在這個公司。

2016 年風靡全球的云原生理念亦是 Pivotal 公司提出猿规,美國硅谷著名的精益化創(chuàng)業(yè)書籍的作者 Eric Ries 也加入了 Pivotal公司衷快。Spring Boot 為什么如此的優(yōu)秀,正是因為背后有這些全球的頂級開發(fā)者坎拐。

Pivotal 公司的背后其實是一場商業(yè)并購大片烦磁,有很多著名的公司在其身后养匈,戴爾哼勇、Spring都伪、EMC、VMware 等等积担,詳情大家開源看這篇文章:《是時候給大家介紹 Spring Boot/Cloud 背后豪華的研發(fā)團隊了》陨晶。

04.有個好干爹

Spring Boot 的干爹是誰呢?毫無疑問就是 Spring 了帝璧。有圖為證先誉,看下面:

Spring Boot 完全依賴 Spring 來開發(fā),發(fā)明 Spring Boot 也是為了讓大家更好的使用 Spring的烁,而不是消滅 Spring 褐耳,所以說沒有 Spring 這個干爹,就沒有 Spring Boot 渴庆。

當然 Spring Boot 不僅是基于 Spring 開發(fā)這么簡單铃芦,Spring Boot 完全繼承了 Spring 干爹的聲譽,說實話如果沒有 Spring 這個老干爹十多年來打拼下來的天氣襟雷,哪有 Spring Boot 今天來的風光刃滓。

2002 年的時候, Rod Johnson 可能也沒有想到自己開創(chuàng)的一個小開源軟件耸弄,可以發(fā)展到今天這么輝煌的一刻咧虎。到了今天,如果一個 Java 程序員說自己不知道 Spring 计呈,那估計會把他當作外星人吧砰诵。

Spirng 當時以 IoC 和 Aop 開始發(fā)家,一開始的目標只是想干掉 EJB 這個龐然大物捌显,但是隨著時間的發(fā)展胧砰,Spring 開始了一路的逆襲之路,在2010年的時候 Spring 還是 SSH 三大框架之一苇瓣,到了今天 Spring 要說自己是老二尉间,還這沒有人敢說自己是第一。

正是因為 Spring 在 Java 社區(qū)中有如此強大的影響力击罪,所以在 Spring Boot 一出生的時候哲嘲,就受到了廣大社區(qū)愛好者的關(guān)注、使用媳禁、寫教程眠副、貢獻代碼、提 Bug竣稽。正是因為龐大的開源愛好者囱怕,才一起反鋪 Spring Boot 霍弹,讓 Spring Boot 發(fā)展這么快,這么好娃弓。

如果你想系統(tǒng)的學習 Spring Boot 典格,給大家強烈推薦一個 Spring Boot 中文索引,收集了 Spring Boot 中文社區(qū)的所有學習資料台丛,地址:?http://springboot.fun/耍缴。

以上便是我個人對 Spring Boot 為什么這么火的一些淺薄見解,大家是怎么認為的呢挽霉,歡迎給我留言防嗡。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市侠坎,隨后出現(xiàn)的幾起案子蚁趁,更是在濱河造成了極大的恐慌,老刑警劉巖实胸,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件他嫡,死亡現(xiàn)場離奇詭異,居然都是意外死亡童芹,警方通過查閱死者的電腦和手機涮瞻,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來假褪,“玉大人署咽,你說我怎么就攤上這事∩簦” “怎么了宁否?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長缀遍。 經(jīng)常有香客問我慕匠,道長,這世上最難降的妖魔是什么域醇? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任台谊,我火速辦了婚禮,結(jié)果婚禮上譬挚,老公的妹妹穿的比我還像新娘锅铅。我一直安慰自己,他們只是感情好减宣,可當我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布盐须。 她就那樣靜靜地躺著,像睡著了一般漆腌。 火紅的嫁衣襯著肌膚如雪贼邓。 梳的紋絲不亂的頭發(fā)上阶冈,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天,我揣著相機與錄音塑径,去河邊找鬼女坑。 笑死,一個胖子當著我的面吹牛晓勇,可吹牛的內(nèi)容都是我干的堂飞。 我是一名探鬼主播灌旧,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼绑咱,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了枢泰?” 一聲冷哼從身側(cè)響起描融,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎衡蚂,沒想到半個月后窿克,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡毛甲,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年年叮,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片玻募。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡粱檀,死狀恐怖享郊,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤询一,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站乏苦,受9級特大地震影響六荒,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蝗砾,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一先较、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧悼粮,春花似錦闲勺、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至苞笨,卻和暖如春债朵,著一層夾襖步出監(jiān)牢的瞬間子眶,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工序芦, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留臭杰,地道東北人。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓谚中,卻偏偏與公主長得像渴杆,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子宪塔,可洞房花燭夜當晚...
    茶點故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內(nèi)容