Martin Häcker/Java Kurs/Tag 3
Version vom 28. März 2006, 13:25 Uhr von Martin Häcker (Diskussion) (→LE 5: Strukturiertes Programmieren: -> Bäckereiaufgabe)
LE 5 - Gestrichen
Dafür gibt es eine Wiederholung der Probleme am Vortag und eine Einführung in die Übungsaufgabe von Florian "Einkaufen in einer Bäckerei".
LE 6: Effizient Fehler finden und Testen
- Vortragende: Karsten Bsufka, Olaf-Kroll Peters
- Aufgaben: Entwurf 1
- Java: Wie findet man effizient Fehler?
- Greenspuns third law of programming: "Debugging is at least twice as hard as Programming. So, if you program as clever as you can, you are by definition too dumb do debug it."
- Einfachheit bringt funktionierende Programme
- Man hat eigentlich ein Kommunikationsproblem: Das was man will, muss man in Code hinschreiben - aber so exact das es sogar ein Computer ausführen kann. Gleichzeitig ist das eigentliche Ziel des Programms, das der Programmierer es lesen und verstehen kann. Für ihn (und andere) ist der code geschrieben!
- Vorsicht vor
- langen Funktionen
- Namen die nicht den zweck einer Variablen zeigen
- tiefen verschachtelungen
- komplizierten if-/while-/for-Bedingungen
- allem was man nicht auf den ersten Blick sieht
- Beispiele für jede dieser Sachen (if-gotcha, lange funktion, blöde namen, komplizierte if-bedingung (klammerfehler), ...)
- Hat viel mit erfahrung zu tun - man muss also schon jede menge Fehler finden um gut zu werden - aber es gibt auch techniken
- Gefundene Fehler korrigieren
- Debugging (mit Vorführung)
- Testen: Selber Fehler finden (mit Vorführung)
- Seperat testen (von main aus)
- Greenspuns third law of programming: "Debugging is at least twice as hard as Programming. So, if you program as clever as you can, you are by definition too dumb do debug it."