\begin{slide}{Model/View/Controller}

(Modell/Anzeige/Steuerung)

(engl. \emph{to control} $=$ steuern, \emph{nicht:} kontrollieren)

Beispiel:
\begin{itemize}
\item
  Daten-Modell: Zähler(stand)
\item
  Anzeige: Label mit Zahl oder \dots
\item
  Steuerung: Button
\end{itemize}


\end{slide}

\begin{slide}{MVC-Beispiel}

\begin{verbatim}
public class View implements Observer {
    private Label l = new Label("undefined");
    Component getComponent() { return this.l; }
    public void update(Observable o, Object arg) {
        this.l.setText(Integer.toString(((Counter) o).getCount()));
}   }
public class Simple_MVC_Applet extends Applet {
    Button b = new Button ("step");
    Counter c = new Counter (); View v = new View ();
    public void init () {
        this.add (b); this.add(v.getComponent());
        c.addObserver(v);
        b.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
              c.step();                
            } }); } }
\end{verbatim}
 

\end{slide}

