MVC について読んだことがありますが、Java で Swing を使用してその概念を実装する方法について疑問があります。ここに私が行くものがあります:
モデル:
のオブジェクトListOfThings
が含まれています。Collection
Thing
コントローラー:
「追加」メソッドでインスタンス化して入力します (内部で新しいを作成し、Controller
に追加します)ListOfThings
Thing
Collection
ビュー:モデルを表すコンポーネントをListOfThingsPanel
含むSwing インターフェース。ThingPanel
どちらも伸びJPanel
ます。リンク先ThingPanel
のデータを表示するためのさまざまなコンポーネントが含まれています。Thing
リストに新しい (空の) ものを追加するボタンもあります。クリック イベントは、リストに新しい を追加するよう要求するController
のaddThing()
メソッドを呼び出します。イベント/リスナーシステムがあり、ビューをいつ更新する必要があるかを知るためにそれをリッスンします。ListOfThings
Thing
ListOfThings
ListOfThingsPanel
このようにして、MVCの概念に適切に従っていますか?
更新: 私はまだ Java を学んでいますが、コーディングの経験があり、理論を学び、既製のフレームワークを使用する前に自分の方法で試してみたいと思っています。Swing が MVC パターンを実装していることは承知していますが、特定の方法 (View と Controller を組み合わせたもの) でそれを行うことを読んだことがありますが、これは最善ではなく、他の状況では適用できない可能性があります。「Swing MVC」が「MVC」と変わらないこと、またはその違いが根底にあるアイデアの理解に影響を与えないことを確認できるようになるまで、私は少し用心しています。
私にとって重要なことの 1 つは、モデルをビューから実際に分離して、最終的にさまざまなタイプのさまざまなビューを作成できるようにすることです (Swing だけでなく、コンソールや JavaFX への更新など)。ビュー パーツ自体の外側に固有のスイング。