GUI を備えたサーバー アプリケーションがあります。C# で書かれています。ここで、アプリケーション全体に MVC パターンを使用したいと考えています。
通常、1 つのモデル、1 つのコントローラー、およびおそらく n 個のビューがあります。わかりました、私はすべての 1 つを持っていますが、モデルについてはよくわかりません。
私の状況: 1 つのサーバー状態があり、オンライン/オフラインにすることができ、クライアント数などがあります。これは私の「ServerModel」である可能性があります。ネットワーク ライブラリを介してネットワーク接続を処理し、接続されている場合は学生オブジェクトを作成します。それがすべてここで起こります。このビューは、新しい生徒がいる場合に通知され、新しい生徒用の GUI 要素が (コントローラーを介して) 表示されます。今、私のビューには特別な生徒に関連するアクションがあり、コントローラーは通知「StudentChanged」を受け取り、変更された生徒を取得します。
質問: コントローラーは、生徒を直接変更するか、ServerModel に生徒の変更方法を伝えることができるようになりました。2 番目の方法は一見やり過ぎのように見えますが、MVC の設計を明確にしています。コントローラーから生徒を直接変更したいです。しかし、この MVC 違反 (学生はモデルではなく、モデルの一部) が後の開発やコード全体の柔軟性に何らかの欠点をもたらすかどうかはわかりません。
ハンブルグからのご挨拶 ;)