我编写了一个使用 Swing 作为 GUI 的应用程序,通过 GUI 接受文件,解析输入,将其保存并发DataList送到服务器。我担心我的程序的整个设计,我认为这不是很好。我正在使用 Netbeans 来设计 GUI,并有一个MainClass启动该 GUI 并具有对 GUI 的静态引用的类。还有一些ExecClasses可以进行上述数据的解析和发送。
+------------------------+
| MainClass (静态) |
|-------------------------|
+------+ -数据列表 +-----+
| | | |
静态| +-+--------------+-----+ |静态
参考 | | |参考
| |新 () | 新 () |
| | | |
| | | |
+-+--------v----+ +--v------------+--+
| | | |
| SwingGUI类 | | 执行类 |
| | | |
+---/\-----------+ +-----------------+
|
输入文件
这里是一个简短的概述MainClass:
public class MainClass {
private static MainClass mainClass;
private static ExecClass1 ex1;
private static ExecClass2 ex2;
private static ExecClass3 ex3;
public static void startExecClass2(String param){
ex2 = new ExecClass2(param);
}
我正在使用这些引用,以便SwingGUIClass可以执行ExecClass1示例中的方法。我选择了这种方法,因为我有一个 TextArea 需要从其中一个 ExecClasses 中获取数据并将其显示在 GUI 中。由于我无法从 ExecClass 修改 TextArea。
public class SwingGUIClass {
[...]
private void ButtonActionPerformed(java.awt.event.ActionEvent evt) {
Label.setText(MainClass.getList());
}
private void Button2ActionPerformed(java.awt.event.ActionEvent evt) {
MainClass.startExecClass2(Button2.getText());
}
我知道这远非伟大的设计,也没有遵循一些好的实践指南,例如 MVC。所以我的问题是:你会如何设计这个,你能给我哪些一般的指示?