我编写了一个使用 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。所以我的问题是:你会如何设计这个,你能给我哪些一般的指示?