Programming style done.

This commit is contained in:
Jan Grewe 2014-10-09 11:56:09 +02:00
parent 4d6b30547b
commit c456329e22

View File

@ -128,12 +128,40 @@
\end{frame}
\begin{frame}
\frametitle{Was ist ein Program?}
\frametitle{Und wo lebt es?}
\frametitle{Was ist ein Programm?}
\framesubtitle{Und wo lebt es?}
Ein Programm ist ...
\begin{itemize}
\item ... eine Sammlung von Anweisungen.
\end{itemize}\pause
Es lebt in ...
\begin{itemize}
\item ... einer Datei auf dem Rechner.
\end{itemize}\pause
Wenn es zum Leben erweckt wird...
\begin{itemize}
\item ... wird es Zeile fuer Zeile von oben nach unten ausgef\"urht.
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Was ist ein Programm?}
\framesubtitle{In Matlab}
\begin{itemize}
\item Matlab kennt verschieden Arten von Programmen:
\begin{enumerate}
\item Skripte
\item Funktionen
\item Objekte (werden wir ignorieren)
\end{enumerate}\pause
\item Alle werden in sogenannte m-files gespeichert (z.B. \textit{meinProgramm.m}).
\item Koennen dann von der Kommandozeile aufgerufen werden.
\item Programme erhoehen die Wiederverwertbarkeit von Programmcode.
\item Programme koennen andere Programme aufrufen.
\end{itemize}
\end{frame}
\begin{frame}[plain]
\huge{2. Skripte und Funktionen}
\end{frame}
@ -154,10 +182,57 @@
Eingangs und Ausgangsargumente
\end{frame}
\begin{frame}
\frametitle{}
\framesubtitle{}
\begin{frame}[fragile]
\frametitle{Skripte und Funktionen}
\framesubtitle{Programmierstil}
Programmierstil ist:
\begin{enumerate}
\item Die Namensgebung fuer Variablen und Konstanten.
\item Die Namensgebung von Skripten und Funktionen.
\item Die Verwendung von Einr\"uckungen und Leerzeilen um Bl\"ocke im Code hervorzuheben.
\item Verwendung von Kommentaren und Hilfetexten.
\end{enumerate}
\end{frame}
\begin{frame}[fragile]
\frametitle{Skripte und Funktionen}
\framesubtitle{Programmierstil}
In verschiednen Sprachen verschiedene Konventionen. In MATLAB ...
\begin{itemize}
\item Funktionen, Skripte: Kleinbuchstaben, Abk\"urzungen. (z.B. \verb+xcorr+, \verb+repmat+)
\item Konvertierungen immer mit format2format (z.B. \verb+num2str+)
\item Variablen immer klein, h\"aufig Abk\"urzungen.
\item Kommentare h\"aufig fuer interne Zwecke aber ausf\"uhrliche Dokumentation mit Hilftexten.
\end{itemize}
\end{frame}
\begin{frame}[fragile]
\frametitle{Skripte und Funktionen} \framesubtitle{Programmierstil}
Es gibt verschiedene ''Religionen''. Ein m\"ogliches Credo k\"onnte
sein: \\
\textbf{``Programmcode muss lesbar sein.''}\pause
\begin{enumerate}
\item Variablen werden klein geschrieben. Wenn n\"otig entweder im
\textit{camelCase} oder mit Unterstrichen (z.B. \verb+spikeCount+
oder \verb+spike\_count+).
\item Funktionen und Skripte mit ausdrucksstarken Namen (z.B. \verb+loadSpikeData+).
\item Kommentare sparsam. Eventuell um Abschnitte zu trennen.
\item Hilfetexte: Ein Problem; sie m\"ussen aktuell sein sonst sind
sie sch\"adlicher als wenn sie gar nicht da w\"aren.
\item Einr\"uckung ist Pflicht.
\item Bl\"ocke im Code werden durch 1 Leerzeichen getrennt.
\end{enumerate}
\end{frame}
\begin{frame}[fragile]
\frametitle{Skripte und Funktionen} \framesubtitle{Programmierstil}
Ihr d\"urft all das missachten aber:\\
\vspace{2em}
\huge{Bleibt konsitent!}\pause
\vspace{4em}
Es gibt dazu ganze B\"ucher. z.B. Robert C. Martin: \textit{Clean
Code: A Handbook of Agile Software Craftmanship}, Prentice Hall
\end{frame}
\begin{frame}