docs/DesignPatterns

diff observer.tex @ 9:d7c3983a367a

convertion to utf8
author meillo@marmaro.de
date Tue, 19 Jun 2007 16:44:59 +0200
parents 7744082fd6a3
children 3f937af7e13e
line diff
     1.1 --- a/observer.tex	Mon Jun 18 12:38:48 2007 +0200
     1.2 +++ b/observer.tex	Tue Jun 19 16:44:59 2007 +0200
     1.3 @@ -36,9 +36,6 @@
     1.4  
     1.5  \section[Outline]{}
     1.6  \frame{
     1.7 -  Dauer der Präsentation: etwa 10 Minuten
     1.8 -  \vspace{2ex}
     1.9 -
    1.10    \tableofcontents
    1.11  }
    1.12  
    1.13 @@ -49,19 +46,19 @@
    1.14  
    1.15  \frame{ \frametitle{Von der anderen Seite}
    1.16  
    1.17 -  \begin{block}{Gründe}
    1.18 -    Design Pattern sind so etwas wie ``Best Practices'' (also bewährte
    1.19 +  \begin{block}{Gründe}
    1.20 +    Design Pattern sind so etwas wie ``Best Practices'' (also bewährte
    1.21      Vorgehensweisen), oft \textbf{nach Vorbildern in der Wirklichkeit}
    1.22    \end{block}
    1.23    \pause
    1.24    \begin{block}{Meine Vorgehensweise}
    1.25 -    Ich will nun anhand eines Beispiels aus dem täglichen Leben zeigen, dass
    1.26 -    das Design Pattern ``Observer'' ein absolut natürliches Vorgehen ist, das
    1.27 -    bei ähnlichen Situationen in Programmen deshalb ebenso verwendet werden
    1.28 +    Ich will nun anhand eines Beispiels aus dem täglichen Leben zeigen, dass
    1.29 +    das Design Pattern ``Observer'' ein absolut natürliches Vorgehen ist, das
    1.30 +    bei ähnlichen Situationen in Programmen deshalb ebenso verwendet werden
    1.31      sollte.
    1.32    \end{block}
    1.33  
    1.34 -  % todo: Mehr und ausführlicher; Verweis auf nach dem Vortrag
    1.35 +  % todo: Mehr und ausführlicher; Verweis auf nach dem Vortrag
    1.36  
    1.37  }
    1.38  
    1.39 @@ -72,14 +69,14 @@
    1.40  
    1.41    \begin{block}{Die Situation}
    1.42      \begin{itemize}
    1.43 -      \item Personen die verkaufen möchten
    1.44 -      \item Personen die kaufen möchten
    1.45 +      \item Personen die verkaufen möchten
    1.46 +      \item Personen die kaufen möchten
    1.47        \item Sie wollen/sollen sich nicht kennen
    1.48 -      \item Möglichst effektives Vorgehen
    1.49 +      \item Möglichst effektives Vorgehen
    1.50      \end{itemize}
    1.51    \end{block}
    1.52    \pause
    1.53 -  \begin{block}{Vorschläge?}
    1.54 +  \begin{block}{Vorschläge?}
    1.55      \begin{itemize}
    1.56        \item 
    1.57        \item 
    1.58 @@ -92,11 +89,11 @@
    1.59  \subsection{Ansatz}
    1.60  \frame{ \frametitle{Ansatz}
    1.61  
    1.62 -  \begin{block}{Mögliche Vorgehen}
    1.63 +  \begin{block}{Mögliche Vorgehen}
    1.64    \begin{itemize}
    1.65      \item Personen direkt ansprechen
    1.66      \item Laut in die Menge rufen
    1.67 -    \item Den Freunden erzählen, die es dann weitererzählen
    1.68 +    \item Den Freunden erzählen, die es dann weitererzählen
    1.69    \end{itemize}
    1.70    \end{block}
    1.71  
    1.72 @@ -104,7 +101,7 @@
    1.73  
    1.74    \begin{block}{Probleme}
    1.75      \begin{itemize}
    1.76 -      \item Man weiß nicht wer Interesse hat
    1.77 +      \item Man weiß nicht wer Interesse hat
    1.78        \item nicht mal wieviele
    1.79        \item Manche Interessenten sind vielleicht nur zu bestimmten Zeiten da
    1.80        \item ... oder sie sind taub
    1.81 @@ -115,9 +112,9 @@
    1.82  
    1.83  
    1.84  
    1.85 -\subsection{Erarbeitung einer Lösung}
    1.86 +\subsection{Erarbeitung einer Lösung}
    1.87  
    1.88 -\frame{ \frametitle{Eine (gute) Lösung: Pinnwand}
    1.89 +\frame{ \frametitle{Eine (gute) Lösung: Pinnwand}
    1.90  
    1.91    \begin{block}{Funktionsweise}
    1.92    \begin{itemize}
    1.93 @@ -125,7 +122,7 @@
    1.94      \item Hingehen und nach neuen Zetteln schauen
    1.95      \item Zettel lesen
    1.96      \item Zettel abnehmen
    1.97 -    \item Jeder der ein paar Fähigkeiten hat kann es
    1.98 +    \item Jeder der ein paar Fähigkeiten hat kann es
    1.99    \end{itemize}
   1.100    \end{block}
   1.101  
   1.102 @@ -135,7 +132,7 @@
   1.103      \begin{itemize}
   1.104        \item Man muss hingehen, nur um festzustellen, dass nichts Neues dabei ist
   1.105        \item Man kann wichtige Zettel verpassen
   1.106 -      \item Zettel sollten nicht weggenommen werden können
   1.107 +      \item Zettel sollten nicht weggenommen werden können
   1.108      \end{itemize}
   1.109    \end{block}
   1.110  
   1.111 @@ -144,12 +141,12 @@
   1.112  
   1.113  
   1.114  
   1.115 -\frame{ \frametitle{Verbesserung: Pinnwand-Sekretärin}
   1.116 +\frame{ \frametitle{Verbesserung: Pinnwand-Sekretärin}
   1.117  
   1.118 -  \begin{block}{Lösung}
   1.119 +  \begin{block}{Lösung}
   1.120    \begin{itemize}
   1.121 -    \item Durch Studiengebühren wird eine Sekretärin für die Pinnwand angestellt
   1.122 -    \item Pinnwand und Sekretärin sind fortan eine Einheit
   1.123 +    \item Durch Studiengebühren wird eine Sekretärin für die Pinnwand angestellt
   1.124 +    \item Pinnwand und Sekretärin sind fortan eine Einheit
   1.125      \item Man kann bei ihr einen Zettel in Auftrag geben (auch telefonisch)
   1.126      \item (Sie schreibt mit lesbarer Schrift)
   1.127      \item Sie verhindert, dass Zettel abgenommen werden
   1.128 @@ -160,20 +157,20 @@
   1.129  
   1.130    \begin{block}{Bestehendes Problem}
   1.131      \begin{itemize}
   1.132 -      \item Man läuft immer noch oft unnötig zur Pinnwand
   1.133 +      \item Man läuft immer noch oft unnötig zur Pinnwand
   1.134      \end{itemize}
   1.135    \end{block}
   1.136  
   1.137  }
   1.138  
   1.139  
   1.140 -\frame{ \frametitle{2. Verbesserung: Pinnup-Sekretärin mit Benachrichtigung}
   1.141 +\frame{ \frametitle{2. Verbesserung: Pinnup-Sekretärin mit Benachrichtigung}
   1.142  
   1.143 -  \begin{block}{Lösung}
   1.144 +  \begin{block}{Lösung}
   1.145    \begin{itemize}
   1.146 -    \item Durch Studiengebühren wird eine längere Arbeitszeit der Sekretärin finanziert
   1.147 -    \item Man kann sich bei der Sekretärin nun als ``Interessierter'' registrieren
   1.148 -    \item Die Sekretärin trägt die Telefonnummer in eine Liste ein
   1.149 +    \item Durch Studiengebühren wird eine längere Arbeitszeit der Sekretärin finanziert
   1.150 +    \item Man kann sich bei der Sekretärin nun als ``Interessierter'' registrieren
   1.151 +    \item Die Sekretärin trägt die Telefonnummer in eine Liste ein
   1.152      \item Fortan ruft sie alle Personen der Liste an, wenn sie einen neuen Zettel anpinnt
   1.153    \end{itemize}
   1.154    \end{block}
   1.155 @@ -184,15 +181,15 @@
   1.156  \subsection{Zusammenfassung}
   1.157  
   1.158  % Zusammenfassung des Beispiels: Was haben wir, ist alles abgedeckt
   1.159 -% Frage: Sind die Zuhörer zufrieden? Ist die Lösung gut?
   1.160 +% Frage: Sind die Zuhörer zufrieden? Ist die Lösung gut?
   1.161  \frame{ \frametitle{Zusammenfassung des Beispiels}
   1.162  
   1.163 -  \begin{block}{Pinnwand + Sekretärin + Benachrichtigung}
   1.164 +  \begin{block}{Pinnwand + Sekretärin + Benachrichtigung}
   1.165      \begin{itemize}
   1.166        \item Man kann neue Zettel anpinnen lassen
   1.167        \item Man kann sich als Interessierter anmelden (und auch abmelden)
   1.168 -      \item Interessierte werden bei Änderungen der Pinnwand benachrichtigt
   1.169 -      \item Sie können dann zur Pinnwand gehen und sie sich anschauen
   1.170 +      \item Interessierte werden bei Änderungen der Pinnwand benachrichtigt
   1.171 +      \item Sie können dann zur Pinnwand gehen und sie sich anschauen
   1.172      \end{itemize}
   1.173    \end{block}
   1.174  
   1.175 @@ -201,7 +198,7 @@
   1.176    \begin{block}{Eure Meinung?}
   1.177      \begin{itemize}
   1.178        \item Ist diese Struktur zufriedenstellend?
   1.179 -      \item Erfüllt sie alle Anforderungen?
   1.180 +      \item Erfüllt sie alle Anforderungen?
   1.181        \item Was fehlt?
   1.182      \end{itemize}
   1.183    \end{block}
   1.184 @@ -216,11 +213,11 @@
   1.185  \section{Nun zum Pattern}
   1.186  
   1.187  
   1.188 -\frame{ \frametitle{Überleitung}
   1.189 +\frame{ \frametitle{Ãœberleitung}
   1.190  
   1.191    \begin{block}{Neue Namen}
   1.192      \begin{itemize}
   1.193 -      \item Pinnwand-Sekretärin-Einheit -> ``Subject''
   1.194 +      \item Pinnwand-Sekretärin-Einheit -> ``Subject''
   1.195        \item Die Zettel auf der Pinnwand -> ``subjectState''
   1.196        \item Interessenten -> ``Observers''
   1.197      \end{itemize}
   1.198 @@ -229,7 +226,7 @@
   1.199    \pause
   1.200  
   1.201    \begin{block}{Schnittstellen}
   1.202 -    Die Fähigkeiten die Pinnwand/Sekretärin und Interessenten haben müssen um in diesem Schema korrekt zu funktionieren sind ihre ``Interfaces''.
   1.203 +    Die Fähigkeiten die Pinnwand/Sekretärin und Interessenten haben müssen um in diesem Schema korrekt zu funktionieren sind ihre ``Interfaces''.
   1.204    \end{block}
   1.205  
   1.206  }
   1.207 @@ -253,15 +250,15 @@
   1.208    \end{block}
   1.209  
   1.210    \begin{block}{Zweck}
   1.211 -    Abhängigkeiten zwischen Objekten zu erstellen, sodass sich abhängige Objekte ändern, wenn sich das Objekt selbst ändert.
   1.212 +    Abhängigkeiten zwischen Objekten zu erstellen, sodass sich abhängige Objekte ändern, wenn sich das Objekt selbst ändert.
   1.213      % todo: besser formulieren
   1.214    \end{block}
   1.215  
   1.216    \begin{block}{Kurzbeschreibung}
   1.217 -    Schnittstellen anlegen, um Abhängigkeiten zwischen Objekten registriert
   1.218 -    werden können, und um die abhängigen Objekte über Zustandsänderungen zu
   1.219 +    Schnittstellen anlegen, um Abhängigkeiten zwischen Objekten registriert
   1.220 +    werden können, und um die abhängigen Objekte über Zustandsänderungen zu
   1.221      informieren.
   1.222 -    % todo: Formulierung überdenken
   1.223 +    % todo: Formulierung überdenken
   1.224    \end{block}
   1.225  
   1.226  }
   1.227 @@ -342,7 +339,7 @@
   1.228  }
   1.229  
   1.230  
   1.231 -\frame{ \frametitle{Abschließend}
   1.232 +\frame{ \frametitle{Abschließend}
   1.233    \begin{block}{Verwendete Software}
   1.234    \begin{itemize}
   1.235      \item Debian GNU/Linux
   1.236 @@ -355,7 +352,7 @@
   1.237  
   1.238    \begin{block}{}
   1.239      \vspace{3ex}
   1.240 -    \centerline{\textbf{Danke für eure Aufmerksamkeit}}
   1.241 +    \centerline{\textbf{Danke für eure Aufmerksamkeit}}
   1.242    \end{block}
   1.243  }
   1.244