白話軟體架構與架構師

2021-08-24 22:18:41 字數 1022 閱讀 5807

2023年06月28日

架構一詞是舶來品,是architecture的中文翻譯, 其英文的本意是**於建築行業的建築藝術、建築(風格)和結構,引入到軟體領域裡面來以後,並沒有乙個統一的定義。有的人將架構定義為:功能+設計+構造手段,我們可以通俗的理解為:總體設計和總體結構。

買過房子的人都知道5層以下的樓房一般是磚混結構,而高層和小高層的樓房都是框架結構,樓層越高對結構要求越高。軟體也是一樣,系統越龐大,生命週期越長,結構的重要性就越明顯。因此,隨著人們對軟體工程的深刻理解,將架構進行充分的強調是很自然的,正如人們越來越強調系統的需求分析,從而有了領域工程師和領域專家的概念一樣。其實強調軟體架構的最主要的目的有3個:

重用:人們希望系統能夠重用以前的**和設計,從而提高開發效率;

擴充套件:人們希望在系統能夠保持結構的穩定的前提下很容易地擴充功能和效能,希望能夠「以靜制動「;

簡潔:常言道,簡潔就是美,好的架構一定易於理解,易於學習,易於維護,人們希望能夠通過乙個簡潔的架構來把握系統;

正如我們可以很簡單地用磚混結構和框架結構來概括一幢大樓的結構,專家們也定義了一些術語來定義軟體的架構風格,如層次結構、b/s結構等。軟體架構設計是軟體設計的一部分,是其中的總體設計。軟體的架構設計有一定的創造性,但它畢竟是乙個工程活動,架構的設計是有章可循的,有一定的規律性的,是可以重複的,有其穩定的模式。當然,在系統一開始很難可以建立乙個完善的穩定的架構。迭代是軟體開發過程中必然的乙個過程,這是人的思維活動的乙個必然階段。

軟體架構師實際上就是軟體的總體設計師。首席設計師就是總設計師,打個通俗的比方:是中國改革開放的總設計師,我們用現在的說法可以講,是中國改革開放的首席架構師。架構師的形成一定是在實踐中積累起來的,而並非上了幾次培訓班,讀了幾本書就可以成功的,架構師是在工程實踐中培養出來的!

架構師也並非是萬能的。架構師是客戶需求和開發者之間的橋梁。在軟體行業中,一般提到的架構師是技術架構師,而忽略了領域架構師或者講是領域工程師的概念。乙個好的領域專家一定是業務領域的架構師,他能夠給出某乙個業務領域的架構,我們可以稱為業務架構,只有技術架構和業務架構緊密結合才有可能真正創造出乙個好的系統!

白話軟體架構與架構師

架構一詞是舶來品,是architecture的中文翻譯,其英文的本意是 於建築行業的建築藝術 建築 風格 和結構,引入到軟體領域裡面來以後,並沒有乙個統一的定義。有的人將架構定義為 功能 設計 構造手段,我們可以通俗的理解為 總體設計和總體結構。買過房子的人都知道5層以下的樓房一般是磚混結構,而高層...

軟體架構與架構師 轉

架構一詞是舶來品,是architecture的中文翻譯,其英文的本意是 於建築行業的建築藝術 建築 風格 和結構,引入到軟體領域裡面來以後,並沒有乙個統一的定義。有的人將架構定義為 功能 設計 構造手段,我們可以通俗的理解為 總體設計和總體結構。買過房子的人都知道5層以下的樓房一般是磚混結構,而高層...

軟體架構師

軟體企業中有乙個角色叫做軟體架構師,不同公司或者不同的環境下,對該職位的定位可能不盡相同。微軟首席架構師ray ozzie 對自己職位的一些看法,倒是給人很多啟發 1.不管是設計一座橋梁還是一幢大廈,你是在特定的情況下應用各種設計模式 2.在做程式設計師的時候你要花時間讓自己理解各種不同的模式,並能...