私は現時点で、アーキテクチャのよく知られているレイヤーを慎重に区別する十分な大きさのプロジェクトを作成しています。ソフトウェアアーキテクチャでINotifyPropertyChangedインターフェイスを実装する場所はどこですか?
データアクセスレイヤ(DAL)については、.NETエンティティフレームワークを使用します。
ビジネス層については、クライアントを作成してUIを処理するために使用できる後続の開発者が利用できるビジネスオブジェクトを定義しました。
クライアントアプリケーションをデモンストレーション目的で開発する必要があるため、リストの代わりにObservableCollection<T>
を使用すると非常に便利であり、可能な限りオブジェクトはINotifyPropertyChanged
インターフェイスを実装する必要がありますUIは自動的に変更を検出し、直ちに更新を表示します。
しかし、それが本当に建築的な観点からするのが正しい方法かどうかは疑問です。つまり、というのは技術的にはです。ビジネス層はUIの表示とは関係がありません。私たちはプログラマがそれを使用することを本当に「知っている」わけではありません。彼は単に計算目的のためにオブジェクトを使用したいと思うかもしれません。それで、私は何が一般的な練習だったのだろうか?
これらの機能をビジネスレイヤに実装する必要があります(パフォーマンス上の問題はありません)。これらのすべての機能を含む別のレイヤーに、ある種の「デコレータ」オブジェクトを作成する必要がありますか?
各レイヤーには異なるクラスセットが必要です。少し冗長に聞こえるが、それは正しい選択である(あなたの疑いからもわかるように) – Sklivvz