docs/DesignPatterns

annotate 01_einfuehrung.tex @ 37:debbd3bf76ce

Added tag Ausarbeitung final for changeset f03413250b39d73ca44b22ea1e4022fd3c9e825d
author meillo@marmaro.de
date Sat, 11 Aug 2007 22:43:34 +0200
parents e206112b4afe
children
rev   line source
meillo@11 1 % @file
meillo@15 2 % @brief Referat DesignPatterns `Einführung'
meillo@11 3 % @author Markus Rundel
meillo@11 4 % @since 2007-06-21
meillo@11 5
meillo@11 6
meillo@11 7 \documentclass{beamer}
meillo@11 8
meillo@11 9 \usepackage[utf8]{inputenc}
meillo@11 10 \usepackage{ngerman}
meillo@11 11 \usepackage{graphicx}
meillo@11 12 \usepackage[automark]{scrpage2}
meillo@11 13 \input{Style01}
meillo@11 14
meillo@23 15 \title{Einführung}
meillo@23 16 \author{Markus Rundel}
meillo@23 17 \date{}
meillo@11 18
meillo@11 19
meillo@11 20 \begin{document}
meillo@11 21
meillo@11 22
meillo@11 23 \frame{
meillo@11 24 \titlepage
meillo@11 25 }
meillo@11 26
meillo@11 27
meillo@11 28 \section[Outline]{}
meillo@11 29 \frame{
meillo@11 30 \tableofcontents
meillo@11 31 }
meillo@11 32
meillo@11 33
meillo@11 34
meillo@11 35
meillo@11 36
meillo@11 37
meillo@15 38 \section{Was sind Patterns?}
meillo@15 39 \frame{ \frametitle{Was sind Patterns?}
meillo@17 40 \begin{block}{Was sind Design Patterns?}
meillo@15 41 \end{block}
meillo@15 42 }
meillo@11 43
meillo@15 44
meillo@15 45 \section{Definitionen}
meillo@15 46 \frame{ \frametitle{Definitionen}
meillo@15 47 \begin{block}{Christopher Alexander}
meillo@15 48 Each pattern is a three-part-rule, which expresses a relation between a certain context, a problem and a solution
meillo@15 49 \end{block}
meillo@17 50
meillo@17 51 \pause
meillo@17 52
meillo@15 53 \begin{block}{Martin Fowler}
meillo@15 54 A pattern is an idea that has been useful in one practical context and will be probably useful in others.
meillo@15 55 \end{block}
meillo@17 56
meillo@17 57 \pause
meillo@17 58
meillo@15 59 \begin{block}{Gang of Four (GoF)}
meillo@15 60 Design Patterns sind Beschreibungen zusammenhängender Objekte und Klassen, die maßgeschneidert sind, um ein allgemeines Entwurfsproblem in einem bestimmten Kontext zu lösen.
meillo@15 61 \end{block}
meillo@15 62 }
meillo@15 63
meillo@15 64
meillo@15 65 \section{Geschichte}
meillo@15 66 \frame{ \frametitle{Geschichte}
meillo@17 67 \begin{block}{1970er Jahre}
meillo@17 68 Erstellung erster Entwurfsmuster von einem Architekten
meillo@17 69 \end{block}
meillo@17 70
meillo@17 71 \pause
meillo@17 72
meillo@17 73
meillo@17 74 \begin{block}{1980er Jahre}
meillo@17 75 Entwicklung von Entwurfsmuster für grafische Benutzerschnittstellen
meillo@17 76 \end{block}
meillo@17 77
meillo@17 78
meillo@17 79 \pause
meillo@17 80
meillo@17 81 \begin{block}{1991}
meillo@21 82 ``Design Patterns - Elements of Reusable Object-Oriented Software''
meillo@17 83 \end{block}
meillo@15 84 }
meillo@15 85
meillo@15 86
meillo@15 87 \section{Klassifizierung}
meillo@15 88 \frame{ \frametitle{Klassifizierung}
meillo@17 89 \begin{block}{Schema zum beschreiben von Design Patterns}
meillo@15 90
meillo@16 91 \begin{itemize}
meillo@16 92 \item Mustername und Klassifikation
meillo@16 93 \item Zweck (Wozu dient dieses Muster?)
meillo@16 94 \item Synonyme
meillo@16 95 \item Motivation
meillo@16 96 \item Anwendbarkeit
meillo@16 97 \item Struktur
meillo@16 98 \item Beteiligte Klassen (Akteure)
meillo@16 99 \item Zusammenspiel der involvierten Klassen
meillo@16 100 \item Vor- und Nachteile
meillo@16 101 \item Implementierung
meillo@16 102 \item Beispielcode
meillo@16 103 \item Praxiseinsatz
meillo@16 104 \item Querverweise
meillo@16 105 \end{itemize}
meillo@16 106 \end{block}
meillo@15 107
meillo@15 108 }
meillo@15 109
meillo@15 110
meillo@15 111 \section{Nutzen und Vorteile}
meillo@15 112 \frame{ \frametitle{Nutzen und Vorteile}
meillo@15 113
meillo@15 114 \begin{block}{Nutzen / Vorteile von Design Pattern}
meillo@11 115 \begin{itemize}
meillo@17 116 \item Zeitersparnis
meillo@17 117 \item Fehlerfreiheit
meillo@17 118 \item Gemeinsame Kommunikationsgrundlage
meillo@17 119 \item Sauberes OO-Design
meillo@17 120 \item Lesbarkeit
meillo@15 121 \item Geringerer Testaufwand
meillo@15 122 \item Höhere Robustheit
meillo@11 123 \end{itemize}
meillo@11 124 \end{block}
meillo@11 125
meillo@15 126
meillo@11 127 }
meillo@11 128
meillo@11 129
meillo@15 130 \section{Literatur}
meillo@15 131 \frame{ \frametitle{Literatur}
meillo@17 132 \begin{block}{Design Patterns}
meillo@17 133 \textit{Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides}
meillo@15 134 \end{block}
meillo@15 135
meillo@17 136 \pause
meillo@17 137
meillo@17 138 \begin{block}{Design Patterns Explained}
meillo@17 139 A New Perspective on Object Oriented Design
meillo@17 140
meillo@17 141 \textit{Allan Shalloway, James R. Trott}
meillo@15 142 \end{block}
meillo@15 143
meillo@17 144 \pause
meillo@17 145
meillo@17 146 \begin{block}{Modern C++ Design}
meillo@17 147 Generic Programming and Design Patterns applied
meillo@17 148
meillo@17 149 \textit{Andrei Alexandrescu}
meillo@15 150 \end{block}
meillo@15 151
meillo@15 152 }
meillo@15 153
meillo@15 154
meillo@15 155 \section{Beispiele}
meillo@15 156 \frame{ \frametitle{Beispiele}
meillo@25 157 \begin{block}{Im Script behandelte Design Pattern}
meillo@15 158 \begin{itemize}
meillo@23 159 \item Singleton
meillo@15 160 \item Strategie
meillo@23 161 \item Fassade
meillo@15 162 \end{itemize}
meillo@15 163 \end{block}
meillo@15 164
meillo@15 165 \begin{block}{Weitere Design-Patterns}
meillo@15 166 \begin{itemize}
meillo@23 167 \item Iterator
meillo@23 168 \item General Hierarchie
meillo@23 169 \item Player Role Pattern
meillo@23 170 \item Immutable
meillo@23 171 \item Read-Only Interface
meillo@15 172 \end{itemize}
meillo@15 173 \end{block}
meillo@15 174 }
meillo@15 175
meillo@15 176
meillo@15 177
meillo@15 178
meillo@15 179
meillo@11 180
meillo@11 181
meillo@11 182
meillo@11 183 \section{Zusammenfassung}
meillo@23 184 \frame{
meillo@11 185 \begin{block}{Zusammenfassung}
meillo@23 186 \begin{itemize}
meillo@23 187 \item Design Patterns sind bewährte Lösungen zu bekannten, häufiger auftretenden Problemen in der Softwareentwicklung
meillo@23 188 \item Ende der 80er Jahre wurden Entwurfsmusster erstmals in der Softwareentwicklung eingesetzt
meillo@23 189 \item Die GoF entwickelte ein einheitliches Schema um die einzelnen Design Pattern beschreiben zu können
meillo@23 190 \end{itemize}
meillo@11 191 \end{block}
meillo@11 192 }
meillo@11 193
meillo@11 194
meillo@11 195 \end{document}
meillo@11 196
meillo@11 197