六邊形架構圖是一種用於軟件設計的架構模式,旨在創建鬆散耦合的應用程序組件。這種方法是傳統分層架構的替代方案。它是 DDD(領域驅動設計架構)的多種形式之一。
六邊形架構是由 Alistair Cockburn 在 2005 年發明的,旨在避免面向對象軟件設計中已知的結構缺陷,例如層之間不希望的依賴關係以及用戶界面代碼與業務邏輯的污染。它背後的想法是將輸入和輸出置於設計的邊緣。通過這樣做,您可以將應用程序的中央邏輯(核心)與外部問題隔離開來。邊緣的輸入和輸出意味著您可以在不更改核心代碼的情況下交換其處理程序。
如上圖所示,一個應用程序可以被視為一個整體被視為一個六邊形,業務域位於其中。應用程序打開特定端口以建立與應用程序代碼之間的通信通道。它將域邏輯與基礎設施(例如數據庫、消息總線、郵件傳遞和/或 Web 服務器)隔離開來。它可以輕鬆擴展以支持不同類型的客戶端。只需添加一個新適配器即可。因此,六邊形架構非常適合領域驅動設計 (DDD)。
因此,六邊形架構通過暴露的端口和適配器將系統劃分為幾個鬆散耦合的可互換組件,每個組件通過這些端口連接到其他組件,根據其用途遵循給定的協議。這使得組件在任何級別都可以更換,並促進了測試自動化。
核
- 定義了應用的業務邏輯發生的地方
- 它接收數據,對其執行操作,並且可以選擇與其他外部方(如數據庫或持久性實體)進行通信。
端口
- 它代表了應用程序的邊界。
適配器
- 它可以實現為外部各方使用的接口。
在線六角架構圖工具
您可以使用Visual Paradigm 在線繪製六邊形架構圖 ,並使用易於使用的在線六邊形架構圖工具
在線製作六邊形架構圖
六邊形架構圖是六邊形架構的可視化表示。它旨在創建鬆散耦合的應用程序組件,這些組件可以通過端口和適配器輕鬆連接到其軟件環境。這使得組件在任何級別都可以更換,並促進了測試自動化。
VP Online Diagrams 帶有許多六邊形架構圖模板。您可以從模板開始,也可以從頭開始創建自己的模板。以下是其中一些模板。只需單擊“編輯”按鈕即可開始。