docs/DesignPatterns

diff detailed-observer.tex @ 33:97b57d24fd7b

added sample code; modified summary
author meillo@marmaro.de
date Fri, 10 Aug 2007 22:15:51 +0200
parents 3d6e01222e28
children b2cefbd90180
line diff
     1.1 --- a/detailed-observer.tex	Mon Aug 06 02:25:32 2007 +0200
     1.2 +++ b/detailed-observer.tex	Fri Aug 10 22:15:51 2007 +0200
     1.3 @@ -9,6 +9,7 @@
     1.4    \usepackage[utf8]{inputenc}
     1.5    \usepackage{ngerman}
     1.6    \usepackage{graphicx}
     1.7 +  \usepackage{listings}
     1.8    \usepackage[automark]{scrpage2}
     1.9  
    1.10    \setkomafont{sectioning}{\normalfont\normalcolor\bfseries}
    1.11 @@ -387,25 +388,50 @@
    1.12  
    1.13  
    1.14  \newpage
    1.15 +
    1.16  \section{Zusammenfassung}
    1.17   %\textbf{Zusammenfassend}
    1.18 -  \paragraph{Zusammenfassung}
    1.19 +  
    1.20 +  Ich habe in meiner Ausarbeitung bisher ganz bewusst auf Quellcode verzichtet, denn ich wollte vermitteln weshalb das Observer-Pattern so aufgebaut ist wie es ist. Ich wollte Verständnis für Design Patterns entwickeln und zeigen, dass sie absolut logische Lösungen sind.
    1.21 +
    1.22 +  Design Patterns sind dabei Modelle wie Quellcode aufgebaut werden sollte. Sie sind kein Code --- sie beschreiben nur wie Code sein sollte. Das ist auch ganz gut so, denn:
    1.23 +
    1.24 +  \begin{quote}
    1.25 +    \textbf{ Implementierungen sind Schall und Rauch,\\ 
    1.26 +    Konzepte dagegen bleiben bestehen!  }
    1.27 +  \end{quote}
    1.28 +
    1.29 +  Aus diesem Grund will ich mich mit Quelltext auf dieses Beispiel im Anhang beschränken. Dennoch finde ich es wichtig, doch zumindest eine Beispiel-Implementierung vorzeigen zu können, da Quellcode sehr aussagekräftig sein kann. In jeden Fall wird er meine sonstigen Ausführungen gut abrunden.
    1.30 +
    1.31 +
    1.32 +  \paragraph{In drei Sätzen:}
    1.33      \begin{itemize}
    1.34        \item Menschen denken basierend auf der Realität
    1.35        \item deshalb Design Patterns auf Realität zurückführen
    1.36        \item Patterns anwenden weil man es in der Realität auch so machen würde
    1.37      \end{itemize}
    1.38 -  
    1.39  
    1.40  
    1.41  
    1.42  
    1.43  
    1.44 +\appendix
    1.45  
    1.46 +\newpage
    1.47  
    1.48 +\section{Beispiel-Implementierung}
    1.49  
    1.50 -\section{Abschließend}
    1.51 -  \paragraph{Verwendete Software}
    1.52 +  {\scriptsize
    1.53 +    \lstinputlisting[language=java]{code/observer-example.java}
    1.54 +  }
    1.55 +  \flushright{ \tiny Quellcode von http://java2s.com }
    1.56 +
    1.57 +
    1.58 +
    1.59 +
    1.60 +
    1.61 +
    1.62 +\section{Verwendete Software}
    1.63    \begin{itemize}
    1.64      \item Debian GNU/Linux
    1.65      \item \texttt{pdflatex}
    1.66 @@ -419,21 +445,4 @@
    1.67  
    1.68  
    1.69  
    1.70 -
    1.71 -
    1.72 -\appendix
    1.73 -
    1.74 -\section{Code}
    1.75 -  \textbf{ Implementierungen sind Schall und Rauch,\\ Konzepte dagegen bleiben bestehen!  }
    1.76 -
    1.77 -
    1.78 -
    1.79 -
    1.80 -
    1.81 -
    1.82 -
    1.83 -
    1.84 -
    1.85 -
    1.86 -
    1.87  \end{document}