Skip to content
This repository was archived by the owner on Apr 21, 2018. It is now read-only.

Commit d06d8a2

Browse files
author
YouniS Bensalah
committed
enough slides already
1 parent ca8c266 commit d06d8a2

2 files changed

Lines changed: 91 additions & 7 deletions

File tree

img/javacollectionsframework.png

303 KB
Loading

slides-09.tex

Lines changed: 91 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -198,11 +198,11 @@ \subsubsection{Rekursion}
198198
\end{itemize}
199199
\begin{exampleblock}{}
200200
$
201-
\mathscr{A}(m, n) =
201+
\mathscr{A}(m, n) :=
202202
\begin{cases}
203-
n+1 & \text{if\qquad} m = 0\\
204-
\mathscr{A}(m-1, 1) & \text{if\qquad} m > 0 \text{\,and\,} n = 0\\
205-
\mathscr{A}(m-1, \mathscr{A}(m, n-1)) & \text{if\qquad} m > 0 \text{\,and\,} n > 0
203+
n+1 & \text{if\quad} m = 0\\
204+
\mathscr{A}(m-1, 1) & \text{if\quad} m > 0 \text{\,and\,} n = 0\\
205+
\mathscr{A}(m-1, \mathscr{A}(m, n-1)) & \text{if\quad} m > 0 \text{\,and\,} n > 0
206206
\end{cases}
207207
$
208208
\end{exampleblock}
@@ -213,7 +213,7 @@ \subsubsection{Rekursion}
213213
\subsubsection{Iteration vs. Rekursion}
214214

215215
\begin{frame}[fragile]{Iteration vs. Rekursion}
216-
Alternativ\dots
216+
Alternativ zur rekursiven Variante von \texttt{factorial()}\dots
217217
\begin{exampleblock}{}
218218
\begin{lstlisting}[language=Java,basicstyle=\scriptsize]
219219
int factorial(int n) {
@@ -228,8 +228,7 @@ \subsubsection{Iteration vs. Rekursion}
228228
\end{exampleblock}
229229
\end{frame}
230230

231-
\begin{frame}{Rekursion}
232-
\textbf{Zusammenfassung}
231+
\begin{frame}{Zusammenfassung}
233232
\begin{itemize}
234233
\item \textbf{Rekursion} kann speicheraufwendig werden, da jedes Mal eine neue Instanz der Methode aufgerufen wird.
235234
\begin{itemize}
@@ -244,10 +243,95 @@ \subsubsection{Iteration vs. Rekursion}
244243

245244
\section{Java API}
246245

246+
\begin{frame}{Java API}
247+
\begin{itemize}
248+
\item Die \textbf{Java API} ist eine Sammlung von Klassen/Paketen für häufig benötigte Funktionalitäten.
249+
\vspace{.3in}
250+
\item Wichtige Pakete:
251+
252+
\begin{itemize}
253+
\item \texttt{java.lang}: Basisfunktionalität
254+
\item \texttt{java.util}: Java Collections Framework
255+
\item \texttt{java.io}: Ein- und Ausgabe
256+
\end{itemize}
257+
258+
\end{itemize}
259+
260+
\end{frame}
261+
262+
\begin{frame}{Java Collections Framework}
263+
\begin{figure}
264+
\includegraphics[scale=.28]{img/javacollectionsframework.png}
265+
\end{figure}
266+
\end{frame}
267+
268+
\begin{frame}{Read the fine manual}
269+
\Large{\url{https://docs.oracle.com/javase/8/docs/api}}
270+
\end{frame}
271+
247272

248273

249274
\section{Testen}
250275

276+
\begin{frame}{Testen}
277+
\textsc{\LARGE{Murphy's law}}\\
278+
\textsc{Anything that can go wrong will go wrong.}
279+
\end{frame}
280+
281+
\section{Testen}
282+
283+
\begin{frame}{Testen}
284+
\textsc{\LARGE{Corollary}}\\
285+
\textsc{If there is a possibility of several things going wrong, the one that will cause the most damage will be the one to go wrong.}
286+
\end{frame}
287+
288+
\begin{frame}{Testen}
289+
\textit{Was habe ich überhaupt davon ?}
290+
\begin{itemize}
291+
\item Testen ermöglicht es, Software-Fehler zu finden um diese dann zu korrigieren !
292+
\item Dabei versucht man möglichst viele verschiedene Situationen abzudecken, in denen etwas schieflaufen kann.
293+
\begin{itemize}
294+
\item e.g., viele unterschiedliche Benutzereingaben\dots
295+
\end{itemize}
296+
\end{itemize}
297+
\end{frame}
298+
299+
\begin{frame}{Testen}
300+
\textit{Wann habe ich mein Programm genug getestet ?}
301+
\pause
302+
\begin{itemize}
303+
\item Nie.
304+
\pause
305+
\item Die sinnvollere Frage lautet: \quotes{\textbf{Wie sehen gute Testfälle aus ?}}
306+
\end{itemize}
307+
\end{frame}
308+
309+
\begin{frame}{Testen}
310+
\textit{Wie sehen gute Testfälle aus ?}
311+
\pause
312+
\begin{itemize}
313+
\item Typische Vorgehensweise:
314+
\begin{enumerate}
315+
\item Klassifizierung der möglichen Eingabedaten (Standardsituationen und Randfälle betrachten)
316+
\item Auswahl der repräsentativen Daten zu jedem Testfall
317+
\end{enumerate}
318+
319+
\item Prüfen genau eine spezifische Eigenschaft ab.
320+
\item Kurz und knapp.
321+
\item Können isoliert ausgeführt werden.
322+
\item Orientieren sich an der Spezifikation (i.e., Aufgabenstellung)
323+
\end{itemize}
324+
\end{frame}
325+
326+
327+
\begin{frame}{Testen}
328+
\Large{\quotes{Testing shows the presence, not the absence of bugs.}}\\
329+
\vspace{.4in}
330+
\textit{- Dijkstra}
331+
\end{frame}
332+
333+
334+
251335
\begin{frame}{Fragen ?}
252336
\begin{figure}
253337
\includegraphics[scale=.5]{img/question_to_idea.jpg}

0 commit comments

Comments
 (0)