我想使用MVC开发一个应用程序。 该应用程序将具有多个Windows和对话框(> 30个Windows / Dialogs)。 现在的问题是:我如何在这样的应用程序中应用MVC?
MVC-Tutorials通常只有一个Window,一个Controller和一个Model。
我宁愿使用一个包含所有视图的View-package,一个包含所有控制器的Controller包和一个包含所有模型的Model-package?
或者我会为每个Window / Dialog使用一个包并实现许多小型MVC吗?
最后一个问题:MVC是使用多个Windows / Dialogs的正确选择还是另一种模式是更好的解决方案? 这可能取决于应用程序和每个窗口/对话框的功能,但是如果有一般要考虑的事情,那么最好知道:)
编辑:对不起,我忘了,不认为这很重要。问题是关于Java / Swing。但是可能希望稍后切换到想到的任何东西。如果我使用Swing,SWT,GWT这很重要吗?答案 0 :(得分: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