更好的GUI类组织?

时间:2010-09-12 09:48:53

标签: java swing scala

我目前正在尝试使用Scala进行编程,但我想这通常也适用于其他编程?

在Swing中,我们通常将代码和逻辑组织在一个类中(可能是我们的Frame或Panel)。我在传球中学到的一直都在处理一个班级。我想知道是否有任何中等规模(不是太大而复杂)的项目可供查看?

我们如何实际组织我们的代码,例如从登录到查看表,更新表,以及其他任务?我们通常会创建很多框架,这似乎是我从Visual Basic中学到的东西吗?或者只是很多面板,并有一个框架来容纳这些框架?如果是第二种情况,我将如何将信息从一个面板传递到另一个面板,因为除了通过框架之外它们实际上并不直接相关。

该组织的任何指南?

2 个答案:

答案 0 :(得分:2)

使用模型视图控制器(MVC)架构进行调查。这样,您就拥有了一个存储当前状态的模型,一个显示您想要的内容的视图,以及一个在两者之间进行通信的控制器(业务逻辑)。这允许您修改模型或视图,而不必对代码中的其他位置进行太多更改。这也意味着您可以在另一个模型上重用您的视图(GUI)。

使用上述内容,您可以拥有一个可以看到多个面板并更新它们的控制器,以及处理这些面板上的操作并反映模型的更改。

答案 1 :(得分:1)

如果我从你的评论中理解正确,你就是在寻找一个简单的例子。从这个outline开始,这个简单edit history游戏的example显示了使用Model–View–Controller模式开发GUI程序的演变。虽然最初似乎更复杂,但模式的价值在于解耦模型和视图。这样可以更独立地修改它们。

相关问题