偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

我們聊聊如何培養(yǎng)架構(gòu)思維?你學(xué)會了嗎?

開發(fā) 架構(gòu)
雖然架構(gòu)確實存在一些挑戰(zhàn),但在某些時候,架構(gòu)的 “世界” 在復(fù)雜度上可能還不如編碼中的細(xì)枝末節(jié)那么大。所有程序員都應(yīng)盡可能早地培養(yǎng)自己的架構(gòu)思維。

一提到架構(gòu),很多程序員可能會立刻心生敬畏,覺得這是一件很高端、很難且極具挑戰(zhàn)的事情。然而,與編程相比,架構(gòu)更多地關(guān)注宏觀層面。雖然架構(gòu)確實存在一些挑戰(zhàn),但在某些時候,架構(gòu)的 “世界” 在復(fù)雜度上可能還不如編碼中的細(xì)枝末節(jié)那么大。所有程序員都應(yīng)盡可能早地培養(yǎng)自己的架構(gòu)思維。即便你未來不從事架構(gòu)相關(guān)工作,但擁有架構(gòu)思維能極大地開拓你的視野,助力你在技術(shù)道路上走得更遠(yuǎn)。

在了解具體的架構(gòu)思維培養(yǎng)方法之前,需先明確架構(gòu)的意義究竟是什么。簡單來說,架構(gòu)表達(dá)的是一種關(guān)系,即多個現(xiàn)實元素之間的關(guān)系。這里有兩個關(guān)鍵詞:關(guān)系和現(xiàn)實。其中,“關(guān)系” 很好理解,指的是不同事物之間以何種形式共存。而 “現(xiàn)實” 卻常常容易被人忽視,因為它顯得很平常。但是,在做架構(gòu)時,如果對某些現(xiàn)實的定義不精準(zhǔn),那么后續(xù)的工作大概率也是錯誤的。所以,要做好架構(gòu),第一步就是先明確當(dāng)前要解決的問題或要達(dá)成的目標(biāo),并弄清楚其中涉及的相關(guān)概念所表達(dá)的業(yè)務(wù)含義。你可以將這一步中得到的相關(guān)概念用工具或者紙筆畫出來,平鋪開來即可。

圖片圖片

做完這一步,接下來就是傳統(tǒng)意義上做架構(gòu)的過程。對于這個過程,可以用一句話來概括:架構(gòu)的過程其實就是建模的過程。所謂建模,就是進(jìn)一步細(xì)化當(dāng)前的事物,并基于所得信息做相關(guān)的延展和規(guī)劃,循序漸進(jìn),得到一個完整的、可執(zhí)行的方案的過程。

說起來容易,做起來卻并不輕松。在架構(gòu)的過程中,會涉及到分解、集成、復(fù)用、分層、抽象、結(jié)構(gòu)化以及迭代等方面。具體該怎么做呢?可以參考以下 5 個步驟。

第一步:搞清楚要解決的現(xiàn)實問題。

當(dāng)拿到一個稍具規(guī)模的功能后,需先弄清楚這個功能要解決的問題是什么,不要一上來就寫代碼或者找現(xiàn)成的解決方案??偸且罉赢嫼J的話,很難培養(yǎng)出自己的架構(gòu)思維。

第二步:確定邊界。

要考慮問題所在的場景中有哪些輸入數(shù)據(jù),最終輸出的又是什么,這樣就把問題的邊界給定下來了。

第三步:用分解、抽象、結(jié)構(gòu)化的思維來拆分問題,并梳理好每個流程。

把問題進(jìn)行拆解,看看解決了哪些小問題之后,這個大問題就能被解決。然后,思考每一個小問題是否有解決方案。如果有,可以把中間的邏輯用流程圖畫出來。如果邏輯太復(fù)雜,那就說明設(shè)置的問題顆粒度還是太大,繼續(xù)拆。如果某個小問題沒有解決方案,同樣繼續(xù)拆,直到有解決方案為止。

第四步:借助集成、復(fù)用、分層思維給出最合理的技術(shù)實現(xiàn)方案,形成最終一份完整的架構(gòu)。

根據(jù)自己的技術(shù)儲備,針對每一個問題給出具體的技術(shù)實現(xiàn)方案,選擇最簡單、高效的一個。然后把所有問題的解決方案放在一起看,提煉可復(fù)用的部分出來,并考慮用什么形式進(jìn)行封裝。可以是一個簡單的庫,也可以是一個完整的框架,或是 API 等等。

第五步:根據(jù)對未來的預(yù)判對架構(gòu)方案進(jìn)行局部修正,直到合理。

根據(jù)自己對業(yè)務(wù)的理解,和與產(chǎn)品經(jīng)理、業(yè)務(wù)方的溝通,預(yù)判一下后續(xù)可能的擴(kuò)展點,看當(dāng)前的設(shè)計是否能滿足。如果不能滿足,就逐級逆向倒推父問題,直到找到與這個新的擴(kuò)展點相關(guān)的根問題,停下來把這個根問題下面的子問題全部重新設(shè)計一下。然后再重復(fù)第四步,直到得到一個當(dāng)下看起來完全滿足預(yù)期的方案。

圖片圖片

整個流程下來,就完成了一次架構(gòu)設(shè)計工作,這些工作可以幫助你培養(yǎng)自己的架構(gòu)思維。等慢慢熟練之后,也可以根據(jù)實際情況自行刪減一些步驟。

責(zé)任編輯:武曉燕 來源: 二進(jìn)制跳動
相關(guān)推薦

2023-10-31 14:04:17

Rust類型編譯器

2024-10-17 10:00:59

2023-11-13 18:36:04

知識抽取NER

2023-06-07 14:07:00

架構(gòu)

2023-07-10 08:36:21

工具pptword

2023-01-29 08:08:34

并發(fā)庫conc通用庫

2023-01-02 23:43:24

直播架構(gòu)音視

2024-03-05 10:09:16

restfulHTTPAPI

2022-12-26 07:48:04

敏捷項目

2024-06-12 08:36:25

2023-04-13 08:40:12

MySQL服務(wù)器SELECT

2023-03-07 07:50:15

Transactio事務(wù)代碼

2024-11-08 08:56:01

2022-12-22 08:14:54

2024-01-26 06:05:16

KuberneteseBPF網(wǎng)絡(luò)

2025-01-06 09:26:49

2024-08-19 10:24:14

2022-09-26 08:49:11

Java架構(gòu)CPU

2022-04-13 09:01:45

SASSCSS處理器

2022-12-08 10:49:43

點贊
收藏

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