Abstraktion und Kapselung


\begin{frame}[fragile,environment=slide]
\frametitle{Einleitung}
\par
Abstraktio...
...item gemischt (Klassen)
\item übergreifend (Pakete)
\end{itemize}\par\end{frame}

\begin{frame}[fragile,environment=slide]
\frametitle{Information verstecken}
\pa...
...is.foo = foo; }
}\end{verbatim}
(Eclipse: generate constructor \dots)\end{frame}


\begin{frame}[fragile,environment=slide]
\frametitle{Attribute in C\char93 }
\pa...
...o = value; }
}
}
C x; C y; ... x.Foo = 1 + y.Foo;\end{verbatim}
\par\end{frame}

\begin{frame}[fragile,environment=slide]
\frametitle{Klassen, Interfaces}
\par
a...
...Gruppe<M> extends Monoid<M>
{ M inverse (M x); }\end{verbatim}
\par\end{frame}

\begin{frame}[fragile,environment=slide]
\frametitle{Polymorphie}
\par
Abstrakti...
...blone bekommt Datum als Argument
(dependent types)
\end{itemize}\par\end{frame}

\begin{frame}[fragile,environment=slide]
\frametitle{Eingeschränkte Polymorphie}...
...par
Übung: Axiome für totale Ordnungen
in Java-API-Doc nachlesen
\par\end{frame}


\begin{frame}[fragile,environment=slide]
\frametitle{Strategie-Muster}
\par
vori...
...compare (String x, String y) {
return ...
}
});\end{verbatim}
\par\end{frame}


\begin{frame}[fragile,environment=slide]
\frametitle{Interfaces benutzen}
\par
\...
...Beziehungsmuster: Entwurfsmuster
(design patterns)
\end{itemize}\par\end{frame}

\begin{frame}[fragile,environment=slide]
\frametitle{Sichtbarkeiten}
\par
Inform...
...bgeleiteten Klassen
\item
public: in allen Paketen
\end{itemize}\par\end{frame}


\begin{frame}[fragile,environment=slide]
\frametitle{Namen (Designfragen)}
\par
...
...okal?
\par
C++: \verb\vert using namespace ...\vert
\end{itemize}\par\end{frame}



Johannes Waldmann 2007-01-23