Java 更好的GUI类组织?

Java 更好的GUI类组织?,java,swing,scala,Java,Swing,Scala,我目前正在尝试用Scala编程,但我想这通常也适用于其他编程 在Swing中,我们通常将代码和逻辑组织在一个类中(可能是框架或面板)。我从中学到的知识也总是和一门课打交道。我想知道是否有任何中等规模(不是太大和复杂)的项目,以查看 我们实际上如何组织代码,例如从登录到查看表、更新表,以及其他任务?我们通常会创建很多框架吗?这似乎是我从VisualBasic中学到的?或者只是很多面板,有一个框架来支撑这些框架?如果是第二种情况,我如何将信息从一个面板传递到另一个面板,因为它们除了通过框架之外实际上

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

在Swing中,我们通常将代码和逻辑组织在一个类中(可能是框架或面板)。我从中学到的知识也总是和一门课打交道。我想知道是否有任何中等规模(不是太大和复杂)的项目,以查看

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


有关于该组织的指南吗?

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


使用上述方法,您可以拥有一个控制器,该控制器可以查看多个面板并对其进行更新,还可以处理这些面板上的操作并反映对模型的更改。

如果我从您的评论中正确理解,您正在寻找一个简单的示例。从这一点开始,这个简单游戏的演示展示了使用该模式开发GUI程序的过程。虽然一开始看起来更复杂,但模式的价值在于将模型和视图解耦。这样可以更独立地修改它们。

@trashgod,在您提供的链接中,我们需要为模型、视图和控制器创建3个附加类。对不起,还有其他例子吗?:)@JohanSJA:链接提到了一个更复杂的例子。你在找更简单的吗?