G
Guest
Gast
Hi,
ich versuche das MVC und das Observer/Observable Pattern zu verstehen und habe deshalb eine simple Demoapplikation geschrieben:
Model:
View:
Controller:
Hauptklasse:
Ist das so in Ordnung ? Was würdet ihr verbessern?
ich versuche das MVC und das Observer/Observable Pattern zu verstehen und habe deshalb eine simple Demoapplikation geschrieben:
Model:
Code:
public class Model extends Observable{
private int geschwindigkeit;
public void setGeschwindigkeit(int geschw){
geschwindigkeit = geschw;
setChanged();
notifyObservers(geschwindigkeit);
}
}
View:
Code:
public class View extends JFrame implements Observer{
JTextField text;
public View(){
text = new JTextField();
add(text);
pack();
setSize(200,50);
setVisible(true);
}
public void update(Observable o, Object argv){
text.setText(String.valueOf(argv));
}
}
Controller:
Code:
public class Controller {
Model model;
public Controller( Model model){
this.model = model;
new Timer().schedule( new MyTimerTask(model), 0, 1000 ); // setze geschw. jede sek.
}
class MyTimerTask extends TimerTask{
Model m;
public MyTimerTask(Model model){
this.m = model;
}
public void run(){
int random = (int)(Math.random() * 160) + 20;
model.setGeschwindigkeit(random);
}
}
}
Hauptklasse:
Code:
public class Main {
public static void main(String[] args) {
View view = new View();
Model model = new Model();
Controller controller = new Controller(model);
model.addObserver(view); // view beobachtet model
}
}
Ist das so in Ordnung ? Was würdet ihr verbessern?