comparison 05_antiPatterns.tex @ 25:e7ac382e4a20

added content to weiterePatterns
author meillo@marmaro.de
date Wed, 27 Jun 2007 11:16:43 +0200
parents 356aeb2f53f3
children
comparison
equal deleted inserted replaced
24:6592083da58a 25:e7ac382e4a20
4 % @since 2007-06-21 4 % @since 2007-06-21
5 5
6 6
7 \documentclass{beamer} 7 \documentclass{beamer}
8 8
9
10 % \usepackage[T1]{fontenc}
11 \usepackage[utf8]{inputenc} 9 \usepackage[utf8]{inputenc}
12 \usepackage{ngerman} 10 \usepackage{ngerman}
13 \usepackage{graphicx} 11 \usepackage{graphicx}
14 \usepackage[automark]{scrpage2} 12 \usepackage[automark]{scrpage2}
15 \input{Style01} 13 \input{Style01}
16 14
17 15 \title{Andere Patterns}
16 \author{Julian Haug}
17 \date{}
18 18
19 \begin{document} 19 \begin{document}
20
21
22 \title{Andere Patterns}
23 \author{Julian Haug}
24 \date{}
25
26 %\titlegraphic{\includegraphics[width=3cm]{Pics/Maka-Logo.png}}
27 20
28 \frame{ 21 \frame{
29 \titlepage 22 \titlepage
30 } 23 }
31
32
33
34 24
35 25
36 \section[Outline]{} 26 \section[Outline]{}
37 \frame{ 27 \frame{
38 \tableofcontents 28 \tableofcontents
54 \end{block} 44 \end{block}
55 45
56 } 46 }
57 47
58 48
59 \section{Beispiele anderer Muster} 49 \subsection{Beispiele anderer Muster}
60 50
61 \frame{ \frametitle{Beispiele anderer Muster} 51 \frame{ \frametitle{Architekturmuster}
62 52
63 \begin{block}{Architekturmuster} 53 \begin{block}{}
64 \begin{itemize} 54 \begin{itemize}
65 \item beschreiben typische Software-Architekturen 55 \item beschreiben typische Software-Architekturen
66 \item bestimmen nicht ein konkretes Teilproblem, sondern den Grundaufbau der Anwendung 56 \item bestimmen nicht ein konkretes Teilproblem, sondern den Grundaufbau der Anwendung
67 \item Lässt sich in 4 verschiedene Kategorien einteilen 57 \item Lässt sich in 4 verschiedene Kategorien einteilen
68 \begin{itemize} 58 \begin{itemize}
75 \end{block} 65 \end{block}
76 66
77 } 67 }
78 68
79 69
80 \section{Idom} 70 \subsection{Idom}
81 71
82 \frame{ \frametitle{Idom} 72 \frame{ \frametitle{Idom}
83 73
84 \begin{block}{Definition} 74 \begin{block}{Definition}
85 \begin{itemize} 75 \begin{itemize}
86 \item Beschreibt konkrete Implementierung eines Entwurfsmusters 76 \item Beschreibt konkrete Implementierung eines Entwurfsmusters
87 \item ist programmiersprachenspezifisch 77 \item ist programmiersprachenspezifisch
88 \end{itemize} 78 \end{itemize}
89 \end{block} 79 \end{block}
80
81 \pause
90 82
91 \begin{block}{Anwendung} 83 \begin{block}{Anwendung}
92 \begin{itemize} 84 \begin{itemize}
93 \item Konkrete Implementierung eines Entwurfsmusters. 85 \item Konkrete Implementierung eines Entwurfsmusters.
94 \item Programmierkonventionen (Codeformatierung, Namenskonventionen, Kommentar Formatierung, usw.) 86 \item Programmierkonventionen (Codeformatierung, Namenskonventionen, Kommentar Formatierung, usw.)
97 \end{block} 89 \end{block}
98 90
99 } 91 }
100 92
101 93
102 \section{Weitere Beispiele} 94 \subsection{Weitere Beispiele}
103 95
104 \frame{ \frametitle{Weitere Beispiele} 96 \frame{ \frametitle{Weitere Beispiele}
105 97
106 \begin{block}{Weitere Beispiele} 98 \begin{block}{Weitere Beispiele}
107 \begin{itemize} 99 \begin{itemize}
108 \item Analysemuster \\ (beschreiben typische Fälle der Anforderungsanalyse) 100 \item Analysemuster \\ (beschreiben typische Fälle der Anforderungsanalyse)
109 \item Kommunikationsmuster \\ (beschreiben Kommunikationswege zwischen Personen einer Organisation) 101 \item Kommunikationsmuster \\ (beschreiben Kommunikationswege zwischen Personen einer Organisation)
110 \item Organisationsmuster \\ (beschreiben Elemente der Strukturen von Organisationen) 102 \item Organisationsmuster \\ (beschreiben Elemente der Strukturen von Organisationen)
111 \end{itemize}
112 \end{block}
113
114 }
115
116
117 \section{Tipps zur Anwendung}
118
119 \frame{ \frametitle{Tipps zur Anwendung}
120
121 \begin{block}{}
122 \begin{itemize}
123 \item
124 \item
125 \item
126 \end{itemize} 103 \end{itemize}
127 \end{block} 104 \end{block}
128 105
129 } 106 }
130 107
158 \end{block} 135 \end{block}
159 136
160 } 137 }
161 138
162 139
140 \subsection{Programmier-Anti-Patterns}
163 \frame{ \frametitle{Programmierungs-Anti-Patterns} 141 \frame{ \frametitle{Programmierungs-Anti-Patterns}
164 142
165 \begin{block}{} 143 \begin{block}{Zwiebel}
166 \begin{itemize} 144 \begin{itemize}
167 \item 145 \item Neue Funktionalität wird um (oder über) die alte gelegt
168 \item 146 \item Häufig bei Erweiterungen
147 \item Führt zu vielschichtigem Programmcode (Zwiebel)
148 \end{itemize}
149 \end{block}
150
151 \pause
152
153 \begin{block}{Lavafluss}
154 \begin{itemize}
155 \item in Anwendung häuft sich ``toter Quelltext''
156 \item Statt zu löschen wird um ihn ``herum'' programmiert
157 \end{itemize}
158 \end{block}
159
160 }
161
162
163 \section{Tipps zur Anwendung}
164
165 \frame{ \frametitle{Tipps zur Anwendung}
166
167 \begin{block}{Auswahl eines Entwurfmusters}
168 Problem: Viele (ähnliche) Muster kommen in Frage
169 \begin{itemize}
170 \item Musterkatalog
171 \item Genaue Analyse des Problems
172 \end{itemize}
173 \end{block}
174
175 \pause
176
177 \begin{block}{Verwendung des Musters}
178 Problem: Verstehen wie das Muster unser Problem löst
179 \begin{itemize}
180 \item Strukturdiagramm (UML)
181 \item Objekt/Klassenliste
182 \item Implementierungsbeispiele
183 \end{itemize}
184 \end{block}
185
186 \pause
187
188 \begin{block}{Wann sollte KEIN Entwurfsmuster benutzt werden}
189 \begin{itemize}
190 \item Muster dürfen den Code nicht verkomplizieren
191 \item Oft reicht eine Lösung die zwar weniger flexibel aber simpler ist
169 \end{itemize} 192 \end{itemize}
170 \end{block} 193 \end{block}
171 194
172 } 195 }
173 196
174 197
175 198
176 \section{Zusammenfassung} 199 \section{Zusammenfassung}
177 \frame{ %\frametitle{Zusammenfassend} 200 \frame{
178 \begin{block}{Zusammenfassung} 201 \begin{block}{Zusammenfassung}
179 \begin{itemize} 202 \begin{itemize}
180 \item 203 \item Es gibt verschiedene Arten von Mustern – für uns von direkter Bedeutung sind Entwurfs-, Architekturmuster und Idome
181 \item 204 \item Anti-Pattern zeigen welche Fehler man vermeiden sollte
182 \item 205 \item Bei Anwendung von Mustern das Problem genau analysieren, passendes Muster suchen und gegebenenfalls anwenden
183 \end{itemize} 206 \end{itemize}
184 \end{block} 207 \end{block}
185 } 208 }
186 209
187 210