Open3
DDD 外部サービスとの連携
![manten120](https://res.cloudinary.com/zenn/image/fetch/s--OXSgUhjL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_70/https://storage.googleapis.com/zenn-user-upload/avatar/7b4240c268.jpeg)
このスクラップは
DDDで外部サービスと連携するとき、どのように書くか調べたときのメモ
![manten120](https://res.cloudinary.com/zenn/image/fetch/s--OXSgUhjL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_70/https://storage.googleapis.com/zenn-user-upload/avatar/7b4240c268.jpeg)
読んだ
- 外部サービスのAPIを叩くメソッドをもつクラスのインターフェイスをドメイン層に定義する
- 外部サービスのAPIからのレスポンスの構造を、インターフェイスとしてドメイン層に定義する
- レスポンスからドメインとして必要な値を計算するロジックの実装を、ドメイン層に定義する
- レスポンスからドメインとして必要な値を計算するロジックのインターフェイスも、ドメイン層に定義する(?)
![manten120](https://res.cloudinary.com/zenn/image/fetch/s--OXSgUhjL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_70/https://storage.googleapis.com/zenn-user-upload/avatar/7b4240c268.jpeg)
読んだ
- 実装したいドメインルールが外部サービスと連携する表現をした方が自然か
- 自然ならばドメインサービスで、外部サービスのインターフェイスを使う
- 外部サービスのインターフェイスは、ビジネスルールとして名前がつけられるかどうかが重要
- (ドメインルール=ビジネスルール ? わからない)