Benutzer-Werkzeuge

Webseiten-Werkzeuge


de:lehre:softwareentwicklung:ws2016:10:index

10. Code

Themen
Ziel der Programmierung: Intellektuelle Beherrschung komplexer Zusammenhänge
Die Aufgabe von Code: Kommunikation
Software-Entropie
Folien
PDF


Zentrale Aspekte

  • Ziel der Programmierung:
    intellektuelle Beherrschung komplexer Zusammenhänge
  • Programmierer kommunizieren durch ihren Code.
    Man kann nicht nicht, nur unzureichend kommunizieren.
  • Die Qualität von Code nimmt über die Dauer der Entwicklung
    eines Projekts meist ab (Software-Entropie).
  • Die Lösung ist nicht der große Neuentwurf,
    sondern die kontinuierliche Verbesserung im Kleinen.
  • Code-Qualität ist eine Frage der persönlichen Einstellung
    und Wertschätzung des Lesers/Nutzers.

Weiterführende Literatur

Eine kommentierte und handverlesene Liste mit weiterführender Literatur zum Thema. Die Auswahl ist zwangsläufig subjektiv.

Es gibt viele Bücher, die sich mit Codequalität und seinen diversen Aspekten beschäftigen. Ein Buch, das sich explizit mit sauberem Code befasst, ist „Clean Code“ von Robert C. Martin {[martin-rc-2008]}. Aus einer ähnlichen Perspektive gehen Andrew Hunt und David Thomas in ihrem Buch „The Pragmatic Programmer“ {[hunt-a-1999]} auf diese Aspekte ein. Hierher stammt auch der Verweis auf die „Broken-Window-Theorie“.

Ein sehr umfangreiches Buch, das nicht aus dem Dunstkreis der agilen Methoden kommt, ist Steve McConnells „Code Complete“ {[mcconnell-s-2004]}, mit ca. 1000 Seiten allerdings eher schwergewichtig.

Sehr kurz und knapp und mit einem klaren Fokus auf C, C++ und Java ist „The Practice of Programming“ von Brian Kernighan und Rob Pike {[kernighan-bw-1999]}. Viele gute Hinweise finden sich auch in „The Art of UNIX Programming“ von Eric S. Raymond {[raymond-es-2004]}, hier sicherlich vor dem Hintergrund der UNIX-Programmierung, wie der Buchtitel schon verrät.

Darüber hinaus gibt es viele hilfreiche andere Bücher. Nichtnennung bedeutet nicht, dass sie schlechter, sondern ggf. nur, dass sie dem Autor nicht bekannt sind.

<bibtex bibliography> sort=true </bibtex>

de/lehre/softwareentwicklung/ws2016/10/index.txt · Zuletzt geändert: von 127.0.0.1