# HG changeset patch # User meillo@marmaro.de # Date 1180712867 -7200 # Node ID 0923f2ae50a5dc45ed5f0f315e89d4de24096b4d # Parent 961cb2d9b1b5294aeed120b11d2f88ae1d1a0776 added lots of text modified Makefile to call xpdf with -fullscreen diff -r 961cb2d9b1b5 -r 0923f2ae50a5 .hgignore --- a/.hgignore Wed May 30 12:40:26 2007 +0200 +++ b/.hgignore Fri Jun 01 17:47:47 2007 +0200 @@ -5,3 +5,4 @@ *.out *.snm *.toc +push.sh diff -r 961cb2d9b1b5 -r 0923f2ae50a5 Makefile --- a/Makefile Wed May 30 12:40:26 2007 +0200 +++ b/Makefile Fri Jun 01 17:47:47 2007 +0200 @@ -16,7 +16,7 @@ xpdf: ${OBJ} @echo xpdf $@ - @xpdf -z page ${OBJ} + @xpdf -fullscreen -z page ${OBJ} @rm ${OBJ} clean: diff -r 961cb2d9b1b5 -r 0923f2ae50a5 main.tex --- a/main.tex Wed May 30 12:40:26 2007 +0200 +++ b/main.tex Fri Jun 01 17:47:47 2007 +0200 @@ -45,23 +45,41 @@ -\section{Überblick} +\section{Vorgehensweise} -\frame{ \frametitle{Grundlegendes zum Observer} +\frame{ \frametitle{Von der anderen Seite} - \begin{block}{aa} + \begin{block}{Gründe} + Design Pattern sind so etwas wie ``Best Practices'' (also bewährte + Vorgehensweisen), oft \textbf{nach Vorbildern in der Wirklichkeit} + \end{block} + \pause + \begin{block}{Meine Vorgehensweise} + Ich will nun anhand eines Beispiels aus dem täglichen Leben zeigen, dass + das Design Pattern ``Observer'' ein absolut natürliches Vorgehen ist, das + bei ähnlichen Situationen in Programmen deshalb ebenso verwendet werden + sollte. + \end{block} + + % todo: Mehr und ausführlicher; Verweis auf nach dem Vortrag + +} + + +\section{Erarbeitung des Observers} + +\frame{ \frametitle{Ein Beispiel} + + \begin{block}{Die Situation} \begin{itemize} - \item - \item - \item - \item - \item + \item Personen die verkaufen möchten + \item Personen die kaufen möchten + \item Sie wollen/sollen sich nicht kennen + \item Möglichst effektives Vorgehen \end{itemize} \end{block} - \pause - - \begin{block}{bb} + \begin{block}{Vorschläge?} \begin{itemize} \item \item @@ -71,33 +89,124 @@ } +\frame{ \frametitle{Ansatz} -\section{Ansatz} + \begin{block}{Mögliche Vorgehen} + \begin{itemize} + \item Personen direkt ansprechen + \item Laut in die Menge rufen + \item Den Freunden erzählen, die es dann weitererzählen + \end{itemize} + \end{block} -\frame{ \frametitle{Bezug zum RL} + \pause - \begin{itemize} - \item - \item - \item - \item - \end{itemize} + \begin{block}{Probleme} + \begin{itemize} + \item Man weiß nicht wer Interesse hat + \item nicht mal wieviele + \item Manche Interessenten sind vielleicht nur zu bestimmten Zeiten da + \item ... oder sie sind taub + \end{itemize} + \end{block} } +\frame{ \frametitle{Eine (gute) Lösung: Pinnwand} + \begin{block}{Funktionsweise} + \begin{itemize} + \item Man kann Zettel anpinnen + \item Hingehen und nach neuen Zetteln schauen + \item Zettel lesen + \item Zettel abnehmen + \item Jeder der ein paar Fähigkeiten hat kann es + \end{itemize} + \end{block} -\subsubsection{Fehlteilmanagement} -\frame{ \frametitle{Fehlteilmanagement} - %\includegraphics[width=10cm]{Pics/cc.png} + \pause + + \begin{block}{Probleme} + \begin{itemize} + \item Man muss hingehen, nur um festzustellen, dass nichts Neues dabei ist + \item Man kann wichtige Zettel verpassen + \item Zettel sollten nicht weggenommen werden können + \end{itemize} + \end{block} + } -\section{Fazit und Dank} + +\frame{ \frametitle{Verbesserung: Pinnup-Sekretärin} + + \begin{block}{Lösung} + \begin{itemize} + \item Durch Studiengebühren wird eine Sekretärin für die Pinnwand angestellt + \item Pinnwand und Sekretärin sind fortan eine Einheit + \item Man kann bei ihr einen Zettel in Auftrag geben (auch telefonisch) + \item (Sie schreibt mit lesbarer Schrift) + \item Sie verhindert, dass Zettel abgenommen werden + \end{itemize} + \end{block} + + \pause + + \begin{block}{Bestehendes Problem} + \begin{itemize} + \item Man läuft immer noch oft unnötig zur Pinnwand + \end{itemize} + \end{block} + +} + + +\frame{ \frametitle{2. Verbesserung: Pinnwand-Sekretärin mit Benachrichtigung} + + \begin{block}{Lösung} + \begin{itemize} + \item Durch Studiengebühren wird eine längere Arbeitszeit der Sekretärin finanziert + \item Man kann sich bei der Sekretärin nun als ``Interessierter'' registrieren + \item Die Sekretärin trägt die Telefonnummer in eine Liste ein + \item Fortan ruft sie alle Personen der Liste an, wenn sie einen neuen Zettel anpinnt + \end{itemize} + \end{block} + +} + + +% Zusammenfassung des Beispiels: Was haben wir, ist alles abgedeckt +% Frage: Sind die Zuhörer zufrieden? Ist die Lösung gut? + + +\section{Nun zum Pattern} + +\frame { \frametitle{UML-Diagramm des Observers} + \includegraphics[width=20em]{pics/observer.png} +} + + +% Daten aus der Beschreibung des Observers von GoF +% in welche Gruppen wird er eingeordnet + + +% Einsatzgebiete (MVC) und RL (Mailingslisten, Ebay-Suchabo) +% nicht aber (Blog + RSS) + + +% Erweiterungen, verbleibende Probleme, Kompromisse beim Design + + +% Erklärung des Vorgehens +% Frage: war es erfolgreich? + + + +\section{Zusammenfassung} \frame{ \frametitle{Zusammenfassend} - \begin{block}{Fazit} + \begin{block}{Zusammenfassung} \begin{itemize} \item \item @@ -107,20 +216,18 @@ \pause - \begin{block}{Dank} - \vspace{2ex} - - \begin{center} - Vielen Dank\\ - \textbf{dd} - \end{center} + \begin{block}{Fazit} + \begin{itemize} + \item + \item + \item + \end{itemize} \end{block} } \section{Fragen} \frame{ \frametitle{Fragen?} - \vspace{5ex} \centerline{\huge ?} } @@ -132,7 +239,7 @@ \item Debian GNU/Linux \item \LaTeX-Beamer und \texttt{pdflatex} \item Vim - \item gThumb, GIMP und qiv + \item qiv und ImageMagick \end{itemize} \end{block} @@ -143,5 +250,20 @@ } +% Code (Beispiel-Implementierung) + + \end{document} + + + + + + +%\subsubsection{Fehlteilmanagement} +%\frame{ \frametitle{Fehlteilmanagement} +% %\includegraphics[width=10cm]{Pics/cc.png} +%} + +% \vspace{2ex} diff -r 961cb2d9b1b5 -r 0923f2ae50a5 pics/observer.png Binary file pics/observer.png has changed