成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SpringBoot的設(shè)計(jì)理念和目標(biāo)、整體架構(gòu)你有深入了解嗎

開(kāi)發(fā) 后端 架構(gòu)
本文使用 Itellj IDEA (簡(jiǎn)稱 IDEA) 作為閱讀代碼工具,采用純?cè)创a閱讀、實(shí)例+debug 兩種模式配合進(jìn)行學(xué)習(xí)。

源代碼閱讀工具

讀者可根據(jù)日常習(xí)慣,選擇熟悉的代碼閱讀 I 具,比如 Intellij IDEA、Spring Tool Suite、Eclipse、 MyEclipse 等。

閱讀 Spring Boot 源代碼之前,我們還需搭建基礎(chǔ)閱讀環(huán)境。Spring Boot 對(duì) JDK 和構(gòu)建工具有一定的要求, 比如 JDK 8+、Maven 3.3+、Gradle 5.x+等環(huán)境,滿足相應(yīng)需求即可。

為了達(dá)到更好的學(xué)習(xí)效果,建議大家使用實(shí)例+debug 的模式來(lái)進(jìn)行學(xué)習(xí)。因此,源代碼閱讀 I 具最好支持實(shí)例的編寫(xiě)、運(yùn)行、調(diào)試等功能。

本文使用 Itellj IDEA (簡(jiǎn)稱 IDEA) 作為閱讀代碼工具,采用純?cè)创a閱讀、實(shí)例+debug 兩種模式配合進(jìn)行學(xué)習(xí)。

其中純?cè)创a閱讀模式可以幫助我們更好地進(jìn)行代碼的注釋、編寫(xiě)、單元測(cè)試等操作,而實(shí)例+debug 模式可以讓我們更好地理解整個(gè)項(xiàng)目的運(yùn)行流程及功能的具體使用。圖 1-2 和圖1-3 展示 了通過(guò) IDEA 閱讀代碼的兩種模式。

 

 

 

 

Spring Boot 的設(shè)計(jì)理念和目標(biāo)

我們知道,Spring 所擁有的強(qiáng)大功能之一就是可以集成各種開(kāi)源軟件。 但隨著互聯(lián)網(wǎng)的高速發(fā)展,各種框架層出不窮,這就對(duì)系統(tǒng)架構(gòu)的靈活性、擴(kuò)展性、可伸縮性、高可用性都提出了新的要求。隨著項(xiàng)目的發(fā)展,Spring 慢慢地集成了更多的開(kāi)源軟件,引入大量配置文件,這會(huì)導(dǎo)致程序出錯(cuò)率高、運(yùn)行效率低下的問(wèn)題。為了解決這些狀況,Spring Boot 應(yīng)運(yùn)而生。

Spring Boot 本身并不提供 Spring 的核心功能,而是作為 Spring 的腳手架框架,以達(dá)到快速構(gòu)建項(xiàng)目、預(yù)置三方配置、開(kāi)箱即用的目的。

[[345193]]

 

設(shè)計(jì)理念

約定優(yōu)于配置(Convention Over Configuration),又稱為按約定編程,是一種軟件設(shè)計(jì)范式,旨在減少軟件開(kāi)發(fā)人員需要做決定的數(shù)量,執(zhí)行起來(lái)簡(jiǎn)單而又不失靈活。Spring Boot 的核心設(shè)計(jì)完美遵從了此范式。

Spring Boot 的功能從細(xì)節(jié)到整體都是基于“約定優(yōu)于配置開(kāi)發(fā)的,從基礎(chǔ)框架的搭建、配置文件、中間件的集成、內(nèi)置容器以及其生態(tài)中各種 Starters,無(wú)不遵從此設(shè)計(jì)范式。Starter

作為 Spring Boot 的核心功能之一,基于自動(dòng)配置代碼提供了自動(dòng)配置模塊及依賴,讓軟件集成變得簡(jiǎn)單、易用。與此同時(shí),Spring Boot 也在鼓勵(lì)各方軟件組織創(chuàng)建自己的 Starter。

設(shè)計(jì)目標(biāo)

說(shuō)到 Spring Boot 的設(shè)計(jì)目標(biāo),值得一提的是 Spring Boot 的研發(fā)團(tuán)隊(duì)一 Pivotal 公司。Pivotal公司的企業(yè)目 標(biāo)是致力于改變世界構(gòu)造軟件的方式(Weare transforming how the worldbuilds software)”。 Pivotal 公 司向企業(yè)客戶提供云原生應(yīng)用開(kāi)發(fā) PaaS 平臺(tái)及服務(wù),采用敏捷軟件開(kāi)發(fā)方法論幫助企業(yè)客戶開(kāi)發(fā)軟件,從而提高軟件開(kāi)發(fā)人員工作效率、減少軟件運(yùn)維成本,實(shí)現(xiàn)企業(yè)數(shù)字化轉(zhuǎn)型、IT 創(chuàng)新,幫助企業(yè)客戶最終實(shí)現(xiàn)業(yè)務(wù)創(chuàng)新。

Spring Boot 框架的設(shè)計(jì)理念完美遵從了它所屬企業(yè)的目標(biāo)。Spring Boot 不是為已解決的問(wèn)題提供新的解決方案,而是為平臺(tái)和開(kāi)發(fā)者帶來(lái)一種全新的體驗(yàn):整合成熟技術(shù)框架、屏蔽系統(tǒng)復(fù)雜性、簡(jiǎn)化已有技術(shù)的使用,從而降低軟件的使用]檻,提升軟件開(kāi)發(fā)和運(yùn)維的效率。

Spring Boot 的整體架構(gòu)

在 1.2 節(jié)中已經(jīng)對(duì) Spring Boot 的核心項(xiàng)目結(jié)構(gòu)及功能做了相應(yīng)的介紹,本節(jié)我們從架構(gòu)層面 了 解 一 下 Spring Boot 的 不同模 塊之間的依 賴 關(guān) 系 如 圖 1-4 所示 。

 

 

圖 1-4 中為了更清晰地表達(dá) Spring Boot 各項(xiàng)目之間的關(guān)系,我們基于依賴的傳遞性,省略了部分依賴關(guān)系。比如,Spring Boot Starters 不僅依賴了 Spring Boot Autoconfigure 項(xiàng)目,還依賴了 Spring Boot 和 Spring,而 SpringBoot Autoconfigure 項(xiàng)目又依賴了 Spring Boot,Spring Boot 又依賴了 Spring 相關(guān)項(xiàng)目。因此在圖中就省略了 Spring Boot Starters 和底層依賴的關(guān)聯(lián)。

Spring Boot Parent 是 Spring Boot 及圖中依賴 Spring Boot 項(xiàng)目的 Parent 項(xiàng)目,同樣為了結(jié)構(gòu)清晰,圖中不顯示相關(guān)關(guān)聯(lián)。

從圖 1-4 中我們可以清晰地看到 Spring Boot 幾乎完全基于 Spring,同時(shí)提供了 Spring Boot和 Spring Boot Autoconfigure 兩個(gè)核心的模塊,而其他相關(guān)功能又都是基于這兩個(gè)核心模塊展開(kāi)的。本文相關(guān)的源代碼分析也是圍繞兩個(gè)核心模塊展開(kāi)。 

責(zé)任編輯:龐桂玉 來(lái)源: 今日頭條
相關(guān)推薦

2021-08-19 08:59:51

B端C端設(shè)計(jì)

2015-11-06 09:39:52

2022-02-28 10:30:03

架構(gòu)代碼Native

2015-11-06 10:52:51

2024-08-21 08:00:00

2010-01-06 17:18:54

Linux常用軟件

2023-10-31 09:13:16

CPUIntel前端

2010-06-23 20:31:54

2010-07-13 09:36:25

2010-11-19 16:22:14

Oracle事務(wù)

2020-09-21 09:53:04

FlexCSS開(kāi)發(fā)

2022-08-26 13:48:40

EPUBLinux

2009-08-25 16:27:10

Mscomm控件

2020-07-20 06:35:55

BashLinux

2023-10-06 00:04:02

2015-08-25 09:43:50

交互設(shè)計(jì)五大支柱

2019-08-02 08:59:21

Token認(rèn)證服務(wù)器

2019-11-29 16:21:22

Spring框架集成

2017-01-20 08:30:19

JavaScriptfor循環(huán)

2018-02-24 13:21:02

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 成人精品鲁一区一区二区 | 毛片一级片 | 国产精品日韩欧美一区二区三区 | 亚洲精品久久久久久宅男 | 国产精品久久久久aaaa樱花 | 国产精品v| 久久精品女人天堂av | 久久视频一区 | 久久精品欧美电影 | 精久久| 午夜精品久久久久久久久久久久久 | 成人在线免费 | 国产精品视屏 | 欧美成人精品激情在线观看 | 九九久久久| 成人免费视频 | 一级毛片中国 | 欧美xxxx做受欧美 | 久久久国产一区二区三区 | 亚洲小视频在线播放 | 国产探花在线精品一区二区 | 国产免费观看一级国产 | 国产精品日韩欧美一区二区三区 | 久久综合久| 久久国产精品72免费观看 | 亚洲一区不卡在线 | 日韩黄色av | 香蕉一区 | 国产一区二区三区视频 | 精品一区二区三区91 | 久久鲁视频 | 热99| 国产成人一区二区三区精 | 色婷婷av一区二区三区软件 | 精品欧美一区二区在线观看视频 | 一区精品国产欧美在线 | wwwxxx国产 | 色资源站 | 精品久久久网站 | 精品少妇一区二区三区日产乱码 | 色av一区 |