Was sind die häufigsten Programmierfehler bezüglich sauberem und robustem Code?
Da fällt mir spontan ein
Verletzung des Single Responsibility Principles - Module, Klassen, Funktionen sind oft zu groß und sind für zu viele Aspekte gleichzeitig verantwortlich. Deshalb kann man sie nicht einfach rekombinieren.
Verletzung des Don't Repeat Yourself Principles - derselbe Algorithmus taucht mehrfach auf. Das hat uns letztens viel Geld und vor allem Reputation gekostet, denn der (fehlerhafte) Algorithmus, der die Ausschaltreihenfolge von Geräten festlegt, stand zweimal im Code. Eine Stelle, nämlich die, die ein Problem beim Kunden ausgelöst hatte, wurde korrigiert. Die zweite Stelle löste kurz darauf eine Kundeneskalation aus.
Verletzung des Same Abstraction Level Principles - Befehle mit einem hohen Abstraktionsgrad sind mit Befehlen auf einem niedrigeren Abstraktionsgrad vermischt, was Funktionen schwer verständlich macht.
Annahmen werden nicht geprüft - Beispiel: ich nehme an, dass es nur eine handvoll von Elementen einer bestimmten Art gibt, dann sollte ich irgendwo an einer gut sichtbaren Stelle z.B. eine Assertion unterbringen, die das sicherstellt. Sonst kann es vorkommen, dass die Anzahl wächst und irgendwann bricht ein Algorithmus zusammen und niemand weiß, warum.
Ob das die häufigsten Probleme im Code sind, kann ich nicht beurteilen. Aber es sind Fehler, über die ich regelmäßig stolpere (und leider auch selber mache).