1. 程式人生 > >從零開始學架構(一)

從零開始學架構(一)

登陸註冊 定義 角度 mysq 面向 模塊 基本概念 bubuko 註冊

基本概念

架構設計&程序設計

架構設計的關鍵思維的判斷和取舍,程序設計的關鍵思維是邏輯和實現。

系統&子系統

系統泛指由一群有關聯的個體組成,根據某種規則運作,能完成個體不能單獨完成的工作。系統能力不是個體能力之和。

子系統和系統定義一樣,只不過視角有差異,多半是更大系統的一部分。

以微信為例:

技術分享圖片

模塊&組件

系統從邏輯的角度拆分後得到的單元叫模塊,從物理的角度拆分得到的單元叫組件。劃分模塊的目的是職責分離,劃分組件的目的是單元服用。

舉例:

一個學生信息管理系統,從邏輯角度拆分可分為“登陸註冊模塊”、“成績模塊”、“學籍模塊”;從物理的角度拆分有Nginx、Web服務器、MySQL。

框架&架構

框架像spring強調的是規範,架構強調的是結構。

架構設計的目的

整個軟件技術的發展史,其實就是一部與“復雜度”鬥爭的歷史,如:機器語言->匯編->高級語言,再如:面向函數(C)->面向對象(C++、java)。架構設計也不例外,架構設計的主要目的是為了解決復雜度帶來的問題。

從零開始學架構(一)