Commit 75d11881 authored by Lukas Geiter's avatar Lukas Geiter

Use description for error handling

parent 3ef41a66
......@@ -347,21 +347,17 @@ Single User Desktop Programm, Multi Tier Architectures, fast Client \& Server, M
\section{Error Handling Design}
\textbf{Fehler-Prävention:} Design \& Code Reviews. Testing, Static Analysis, Error Handling Design, Concurrency Design \& Testing.
\textbf{Defensive Programmierung:} Alle Werte von externen Quellen prüfen.
\textbf{Fehler-Barrikaden:} Barrikade - dahinter sind Werte gültig. Auf Klassenniveau heisst das, dass public Methoden Eingaben prüfen und private Methoden von geprüften Eingaben ausgehen.
\textbf{Fehlerbehandlung:} Konservativ (Fehlermeldung, Shutdown) oder Optimistisch (Neutrales Resultat, nächstmögliches Resultat, Warnung loggen)
\textbf{Korrektheit:} niemals ungenaues Resultat liefern.
\textbf{Robustheit:} Versuche Software am Laufen zu halten.
\textbf{Exeptions:} Für mögliche produktive Fälle, sicherheitsrelevante Fehler und in Java Throwable Error für nicht zu behandelnde Fälle.
\textbf{Assertions:} Für Programmierfehler, die nicht eintreten soillten, Post- und Preconditions. Assertions sind primär eine Stütze während der Entwicklung, und formale Kommentare.
\begin{description}
\item[Fehler-Prävention] Design \& Code Reviews. Testing, Static Analysis, Error Handling Design, Concurrency Design \& Testing.
\item[Defensive Programmierung] Alle Werte von externen Quellen prüfen.
\item[Fehler-Barrikaden] Barrikade - dahinter sind Werte gültig. Auf Klassenniveau heisst das, dass public Methoden Eingaben prüfen und private Methoden von geprüften Eingaben ausgehen.
\item[Fehlerbehandlung] Konservativ (Fehlermeldung, Shutdown) oder Optimistisch (Neutrales Resultat, nächstmögliches Resultat, Warnung loggen)
\item[Korrektheit] niemals ungenaues Resultat liefern.
\item[Robustheit] Versuche Software am Laufen zu halten.
\item[Exeptions] Für mögliche produktive Fälle, sicherheitsrelevante Fehler und in Java Throwable Error für nicht zu behandelnde Fälle.
\item[Assertions] Für Programmierfehler, die nicht eintreten soillten, Post- und Preconditions. Assertions sind primär eine Stütze während der Entwicklung, und formale Kommentare.
\item[Logging] Fehlerquelle finden (Debugging), Irregularitäten erkennen
\end{description}
\section{Design by Contract (DBC)}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment