01-DDD 领域驱动设计
本讲为十二期第一阶段,聚焦领域驱动设计方法论与战略战术建模。
核心内容
- DDD 战略设计与战术设计
- 限界上下文与上下文映射
- 整洁架构、六边形架构对比
- 代码异味与重构模式
java
// DDD 聚合根示例
public class Order extends AggregateRoot {
private OrderId id;
private List<OrderItem> items;
private OrderStatus status;
public void pay(Payment payment) {
if (status != OrderStatus.CREATED) {
throw new IllegalStateException("订单状态不可支付");
}
DomainEventPublisher.publish(new OrderPaidEvent(this.id));
this.status = OrderStatus.PAID;
}
}