首頁 > 常見問題 > 主體

為什麼學習軟體架構

(*-*)浩
發布: 2019-12-24 09:14:30
原創
2555 人瀏覽過

為什麼學習軟體架構

一、想成為合格的架構師,你要知道軟體架構是個什麼概念,明白架構的定義:

1.軟體架構是一個系統的草圖。

2.軟體架構描述的物件是直接構成系統的抽像元件。                                  中(建議學習中:phpstorm

#3.

4.在實作階段,這些抽像元件被精進為實際的元件,例如具體某個類別或物件。

5.在物件導向領域中,元件之間的連接通常用介面來實現。

二、架構師有細分,基本上可以分為三類:

#1. 系統架構師:伺服器負載,可靠性,伸縮,擴展,資料庫切分,快取應用等

2. 應用架構師:理解業務,梳理模型,設計模式,接口,資料互動等

3. 業務架構師:也可以叫業務領域專家、產業專家、產品顧問、資深顧問通常我們說的架構師是1和2的結合

分層架構(layered architecture)是最常見的軟體架構,也是事實上的標準架構。如果你不知道要用什麼架構,那就用它。

這種架構將軟體分成若干個水平層,每一層都有清晰的角色和分工,不需要知道其他層的細節。層與層之間透過介面通訊。

雖然沒有明確約定,軟體一定要分成多少層,但是四層的結構最常見。

表現層(presentation):使用者介面,負責視覺和使用者互動

業務層(business):實現業務邏輯

持久層(persistence):提供數據, SQL 語句就放在這一層

資料庫(database) :保存資料

有的軟體在邏輯層和持久層之間,加了一個服務層(service),提供不同業務邏輯需要的一些通用介面。

使用者的請求將依序通過這四層的處理,不能跳過其中任何一層。

優點

結構簡單,容易理解和開發

#不同技能的程式設計師可以分工,負責不同的層,天然適合大多數軟體公司的組織架構

每一層都可以獨立測試,其他層的介面透過模擬解決

#一旦環境變化,需要程式碼調整或增加功能時,通常比較麻煩和費時

部署比較麻煩,即使只修改一個小地方,往往需要整個軟體重新部署,不容易做持續發布

軟體升級時,可能需要整個服務暫停

擴充性差。當使用者請求大量增加時,必須依序擴展每一層,由於每一層內部是耦合的,擴展會很困難

以上是為什麼學習軟體架構的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板