腐敗防止層 とは
外部データモデルからの隔離
腐敗防止層 (ACL)
腐敗防止層は、ドメイン駆動設計(DDD)のアーキテクチャパターンで、翻訳層を通じてドメインモデルを外部システムの影響から保護します。
なぜ必要か
| 問題 | 解決策 | |------|--------| | 外部モデルが内部と異なる | ACLがデータを変換 | | 古いAPIのレガシーシステム | コア変更なしの適応 | | サードパーティサービス統合 | 依存関係の分離 | | 新アーキテクチャへの移行 | 段階的な移行 |
ACLコンポーネント
- Translator — モデル間のデータ変換
- Facade — 外部システムへの簡略化インターフェース
- Adapter — プロトコルとフォーマットの適応
- Gateway — 外部リクエストのエントリーポイント
いつ適用するか
- レガシーシステムとの統合
- 異なるAPIバージョンでの作業
- マイクロサービス間の移行
- 外部システム変更からの保護
メリット
- ドメインモデルの純粋性
- 外部変更からの独立性
- 段階的な移行が可能
- ビジネスロジックのテスト可能性