多層 SOA アプリケーションと 100 を超えるテーブルを持つデータベースがあります。すべての CRUD 操作を処理するデータ層にエンティティ フレームワークを使用しています。
サービスでホストされている 1 つのファサード クラスがあり、クライアント アプリ全体で呼び出すことができます。
このファサード クラスには、次のようなメソッドが含まれています。
private void DoSomething()
{
//insert to table1
//insert to table 2
//delete from table 3
//more CRUD operations
}
また、ファサード クラスは基本的に、DoSomething() に似た他のメソッドの負荷でいっぱいです。
したがって、クライアントは基本的にファサード クラスのインスタンスを作成し、これらすべてのメソッドにアクセスできます。
私の質問は、これがファサード パターンのベスト プラクティスであるかということです。ファサード クラスが「重すぎる」と感じており、アプリケーションの規模が大きくなった場合にパフォーマンスに影響するかどうかはわかりません。
大量のメソッドが含まれている場合、ファサード クラスのインスタンスの作成は非常にコストのかかる操作になりますか?