1

の例を通して六角形のアーキテクチャを理解しようとしていRepositoryます。このセットアップでは、次のレイヤーがあります: フレームワーク (インフラストラクチャ) -> アプリケーション -> ドメイン。

私はドメイン部分に持っています.aを介して重複がないかどうかUserを検証したいとしましょう. この情報を取得するには、どこかからこの情報が必要です。ドメインレイヤーにインターフェースを再度追加しました。このようにして、上のレイヤーで解決できます。UserDuplicateUsernameValidatorUserRepository

これは私にとってトリッキーになる部分です。のロジックを実装したいのですがUserRepository、これをアプリケーション層に実装するのは意味がありません。なぜなら、永続化コンテキストはインフラストラクチャ層 (JdbcUserRepositoryまたは などJpaUserRepository) にあるからです。しかし、六角形の構造を正しく理解していればUserRepository、インフラストラクチャ レイヤーにインターフェイスを直接実装することはできません。これは、インフラストラクチャ レイヤーがドメイン レイヤーを認識する必要がないためです。

私は何が欠けていますか?

4

2 に答える 2