私は、MVP に関する次の非常に有益で有益な記事を読みました: MVP Building from scratch。
以下のアーキテクチャ図を参照してください (投稿から取得):
- プレゼンテーション レイヤーで定義されたモデル クラスが BLL レイヤーでも共有されるかどうかを知りたかったのです。これらのクラスは、BLL で参照される別のプロジェクトの一部を形成する必要があります。
- また、サービス レイヤーはモデル クラスを使用して BLL との間でデータを転送しません。
私は、MVP に関する次の非常に有益で有益な記事を読みました: MVP Building from scratch。
以下のアーキテクチャ図を参照してください (投稿から取得):
アーキテクチャによって異なります。モバイル オブジェクト (モバイル デバイスではない) または単にエンティティを参照しています。BLL、DAL、およびサービスのような他のプロジェクトで参照できる共通のプロジェクト/ライブラリに配置すると可能です。グループ化する際には特定のルールがあります。共通オブジェクト、共通ライブラリ内のオブジェクトは非常に基本的なオブジェクトとヘルパー クラスであることを確認してください。UI ライブラリ参照はありません。これは、共通ライブラリの本質を壊すためです。
BLL、DAL にエンティティを参照する制約がある場合 (これは、エンティティ オブジェクトを BLL または DAL に配置したときに発生します)、そのエンティティのインターフェイスを作成し、それを共通ライブラリに配置して、これをエンティティ オブジェクトの代わりにパラメーターとして使用します…
サービスでは、私はモッキングにインターフェイスを使用します...インターフェイスを使用してモックオブジェクトを作成できるため、インターフェイスを使用すると水平テスト(モッキング)を実行できます...
ご質問にお答えできれば幸いです…</p>