5

MVC を使用してアプリケーションを開発したいと考えています。アプリケーションには複数のウィンドウとダイアログがあります (> 30 のウィンドウ/ダイアログ)。ここでの質問は次のとおりです。このようなアプリケーションで MVC を適用するにはどうすればよいですか?

MVC-Tutorials には、通常、1 つのウィンドウ、1 つのコントローラー、および 1 つのモデルしかありません。

すべてのビューを含む 1 つのビュー パッケージ、すべてのコントローラーを含む 1 つのコントローラー パッケージ、およびすべてのモデルを含む 1 つのモデル パッケージを使用しますか?

または、ウィンドウ/ダイアログごとに 1 つのパッケージを使用して、多くの小さな MVC を実装しますか?

そして最後の質問: MVC は複数の Windows/Dialogs で使用するのに適切なものですか、それとも別のパターンがより良い解決策でしょうか? これは、アプリケーションと各ウィンドウ/ダイアログの機能に依存する場合がありますが、一般的な考慮事項がある場合は、知っておくと便利です:)

編集:申し訳ありませんが、忘れてしまいました。重要だとは思いませんでした。質問は Java/Swing についてです。しかし、後で頭に浮かぶものに切り替えたいと思うかもしれません。Swing、SWT、GWT を使用することは重要ですか?

4

1 に答える 1

5

私はパッケージを作成することを好みます。それぞれにモデル、ビュー、コントローラーなどが含まれています。より明確だからです。この場合、アプリケーションがモジュール形式で作成されていることがわかります。アプリケーションを作成し、コントローラー、ビューなどのパッケージを作成する場合、アプリケーションが何をするのかわかりませんし、維持するのが難しくなります。しかし、これは私自身の意見です。

たとえば、私はこのようにします

com.car.door
    controller.DoorController
    entity.DoorEntity
    view.DoorView

com.car.wheel
    controller.WheelController
    entity.WheelEntity
    view.WheelView

com.car.driver
    controller.DriverController
    entity.DriverEntity
    view.DriverView

com.car.road
    controller.RoadController
    entity.RoadEntity
    view.RoadView

私の意見では、アプリケーションが何をするかを見ることができず、維持するのが難しいため、これは間違っています。

com.car.controller
    controller.DoorController
    controller.WheelController
    controller.DriverController
    controller.RoadController

com.car.entity
    entity.DoorEntity
    entity.WheelEntity
    entity.DriverEntity
    entity.RoadEntity

com.car.view
    view.DoorView
    view.DriverView
    view.WheelView
    view.RoadView
于 2013-03-29T08:07:06.010 に答える