Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

swingアプリケーションでの設計について

swingでデスクトップアプリケーションを開発しています。
作成時にクラスをMVCで分けようと思い、調べたところMediatorパターンが当てはまるのではないかと思ったのですが、画面が増えると仲介する部分がどんどん肥大化していき、なにかスッキリしません。(調べ方が甘いのかもしれませんが・・・)
Mediatorパターンを使用する場合は、上記のように肥大化していくのは避けられないのでしょうか?
また、GUIアプリケーションを作成する際の設計として王道みたいな設計はあるのでしょうか?

初心者ですが、よろしくお願いします。

4

回答

4678

閲覧

4件の回答

評価

0

王道はわからんけど、
一枚のパネルをMediator インタフェースとしてcontrolの役
割、そのパネルに対し、ビュー(Collegue インタフェー
ス)を貼り替えて画面切り替えをする。
Ajaxみたいに画面の一部を変える場合は、表示されているビ
ュークラスでアクションを管理して、Mediatorには依存させ
ない(仲介させない)とか。

仲介が肥大化するということは、クラス間の依存が強いわけ
だからあんま良くないと思う。

評価

0

あああ様 ありがとうございます。
そのような方法もあるということですね。

確かにMediatorとのクラス間の依存が強くなっていると思います。検討しなおしてみます。

Mediatorパターンに限らずネットや書籍のサンプルでは、View内でアクションは無名クラスなどで作成されています。これは、サンプルなので単純にしているだけではないかと思うのですが、実際にアプリケーションを作る際にもみなさんは、View内で無名クラスなどを実装しアクションを管理あまり(MVCを意識していない設計?とでも言いますか・・・)しているのでしょうか?

すみません。近くにこういった質問をできる人がいないのでこの場を借りてご教授願います。

評価

0

無名クラスを使った方がイベントの受け取りを直接把握しや
すいと思います。
処理自体は汎化できるように、クラス化したり別に
protectedメソッド作ったりして処理。
結果に対応したビューを返してもいいし、画面の値だけを変
えてもいい。

いかにMVCに近い形に持っていくか(シンプルするか)、ま
た独立性と再利用性を意識しますね。

評価

0

あああ様 ご回答ありがとうございます。
"いかにMVCに近い形にもっていくか"ここが非常に重要だと思います。

わかりやすい回答ありがとうございました。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。