我应该如何组织我的JavaGUI?
我正在用Java创建一个有趣的游戏,并试图决定如何为GUI组织我的类。到目前为止,只有swing组件和布局(没有逻辑)的所有类都在一个名为“ui”的包中。现在我需要将侦听器(即ActionListener)添加到组件(即button)。听众需要与游戏类交流 目前我有: java-创建框架并向其添加面板我应该如何组织我的JavaGUI?,java,user-interface,swing,organization,Java,User Interface,Swing,Organization,我正在用Java创建一个有趣的游戏,并试图决定如何为GUI组织我的类。到目前为止,只有swing组件和布局(没有逻辑)的所有类都在一个名为“ui”的包中。现在我需要将侦听器(即ActionListener)添加到组件(即button)。听众需要与游戏类交流 目前我有: java-创建框架并向其添加面板 import javax.swing.*; import ui.*; public class Game { private JFrame frame; Main main;
import javax.swing.*;
import ui.*;
public class Game {
private JFrame frame;
Main main;
Rules rules;
Game() {
rules = new Rules();
frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
main = new Main();
frame.setContentPane(main.getContentPane());
show();
}
void show() {
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
public static void main(String[] args) { new Game(); }
}
java-游戏逻辑
ui包-所有类都创建新面板,以便与主框架的内容窗格交换
java(主菜单)-创建包含组件的面板
我现在将主类的功能放在哪里?在游戏课上?单独上课?还是整个组织都错了
谢谢首先:你所做的一切都是出于好意。努力使代码井然有序将对您的编程有所帮助。但请记住这一点:开发好的代码不仅仅是组织和分类您的源代码。例如您是否使用任何类型的UML模型?您是否正在应用任何设计模式
所有这些都将引导您完成编写好代码的过程,这似乎是您现在想要的。所有这一切的结果将使您的代码有条理且易于维护。除非您知道为什么需要UML,否则不要使用UML。除非有意义,否则不要设计模式。保持代码简单,保持代码干净,根据需要进行重构。@Kirill:我完全同意你的观点。谢谢你的评论。