\begin{slide}{Verwendung von Daten: Datenklumpen}

Fehler: Klumpen von Daten wird immer gemeinsam benutzt

\begin{verbatim}
String infile_base; String infile_ext;
String outfile_base; String outfile_ext;

static boolean is_writable (String base, String ext);
\end{verbatim}

Indikator: ähnliche, schematische Attributnamen

Lösung: Klasse definieren
\begin{verbatim}
class File { String base; String extension; }

static boolean is_writable (File f);
\end{verbatim}

\end{slide}

\begin{slide}{Datenklumpen---Beispiel}


Beispiel für Datenklumpen und -Vermeidung:
\begin{verbatim}
java.awt

Rectangle(int x, int y, int width, int height)
Rectangle(Point p, Dimension d)
\end{verbatim}
Vergleichen Sie die Lesbarkeit/Sicherheit von:
\begin{verbatim}
new Rectangle (20, 40, 50, 10);
new Rectangle ( new Point (20, 40)
              , new Dimension (50, 10) );
\end{verbatim}


\end{slide}
