領域驅動設計

DDD — 複雜系統的設計方法

核心概念

限界上下文

限界上下文(Bounded Context)是 DDD 的核心戰術模式,定義了領域模型的邊界。每個限界上下文內有統一的領域語言(Ubiquitous Language),不同上下文之間透過上下文映射(Context Map)進行整合。

通用語言

通用語言(Ubiquitous Language)是團隊共享的領域術語,在程式碼、文件、討論中使用一致的詞彙。例如:在電商領域,「訂單」、「出貨單」、「發票」各有明確含義,團隊成員(工程師、產品經理、領域專家)使用相同的語言溝通。

戰術模式實作

class Order: def __init__(self, order_id, customer): self._order_id = order_id self._customer = customer self._items = [] def add_item(self, product, quantity): self._items.append(OrderItem(product, quantity)) def total(self): return sum(item.subtotal() for item in self._items) class Money: def __init__(self, amount, currency='USD'): self._amount = amount self._currency = currency def __add__(self, other): return Money(self._amount + other._amount, self._currency)

相關連結