docs/DesignPatterns

annotate 01_einfuehrung.tex @ 23:e206112b4afe

added zusammenfassung to einfuehrung
author meillo@marmaro.de
date Tue, 26 Jun 2007 22:04:19 +0200
parents 80c995d97cfa
children e7ac382e4a20
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@17 121 \item Kommunikation
meillo@15 122 \item Geringerer Testaufwand
meillo@15 123 \item Höhere Robustheit
meillo@11 124 \end{itemize}
meillo@11 125 \end{block}
meillo@11 126
meillo@15 127
meillo@11 128 }
meillo@11 129
meillo@11 130
meillo@15 131 \section{Literatur}
meillo@15 132 \frame{ \frametitle{Literatur}
meillo@17 133 \begin{block}{Design Patterns}
meillo@17 134 \textit{Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides}
meillo@15 135 \end{block}
meillo@15 136
meillo@17 137 \pause
meillo@17 138
meillo@17 139 \begin{block}{Design Patterns Explained}
meillo@17 140 A New Perspective on Object Oriented Design
meillo@17 141
meillo@17 142 \textit{Allan Shalloway, James R. Trott}
meillo@15 143 \end{block}
meillo@15 144
meillo@17 145 \pause
meillo@17 146
meillo@17 147 \begin{block}{Modern C++ Design}
meillo@17 148 Generic Programming and Design Patterns applied
meillo@17 149
meillo@17 150 \textit{Andrei Alexandrescu}
meillo@15 151 \end{block}
meillo@15 152
meillo@15 153 }
meillo@15 154
meillo@15 155
meillo@15 156 \section{Beispiele}
meillo@15 157 \frame{ \frametitle{Beispiele}
meillo@15 158 \begin{block}{In der Vorlesung behandelte Design Pattern}
meillo@15 159 \begin{itemize}
meillo@23 160 \item Singleton
meillo@15 161 \item Strategie
meillo@23 162 \item Fassade
meillo@15 163 \end{itemize}
meillo@15 164 \end{block}
meillo@15 165
meillo@15 166 \begin{block}{Weitere Design-Patterns}
meillo@15 167 \begin{itemize}
meillo@23 168 \item Iterator
meillo@23 169 \item General Hierarchie
meillo@23 170 \item Player Role Pattern
meillo@23 171 \item Immutable
meillo@23 172 \item Read-Only Interface
meillo@15 173 \end{itemize}
meillo@15 174 \end{block}
meillo@15 175 }
meillo@15 176
meillo@15 177
meillo@15 178
meillo@15 179
meillo@15 180
meillo@11 181
meillo@11 182
meillo@11 183
meillo@11 184 \section{Zusammenfassung}
meillo@23 185 \frame{
meillo@11 186 \begin{block}{Zusammenfassung}
meillo@23 187 \begin{itemize}
meillo@23 188 \item Design Patterns sind bewährte Lösungen zu bekannten, häufiger auftretenden Problemen in der Softwareentwicklung
meillo@23 189 \item Ende der 80er Jahre wurden Entwurfsmusster erstmals in der Softwareentwicklung eingesetzt
meillo@23 190 \item Die GoF entwickelte ein einheitliches Schema um die einzelnen Design Pattern beschreiben zu können
meillo@23 191 \end{itemize}
meillo@11 192 \end{block}
meillo@11 193 }
meillo@11 194
meillo@11 195
meillo@11 196 \end{document}
meillo@11 197
meillo@11 198