Hanspolo's Blog

Clean Code Developer - Roter Grad: Keep it simple, stupid und Root Cause Analysis

Development

Nachdem ich gestern DRY und die Pfadfinderregel beschrieben habe, möchte ich heute die nächsten beiden Teile des roten Grades vorstellen. Hierbei handelt es sich um “Keep it simple, stupid” und der “Root Cause Analysis”.

KISS

Ergänzende eigene Gedanken zu clean-code-developer.de

Dieses Akronym kann verschieden ausgeschrieben werden. Neben “Keep it simple, stupid” (Halt es einfach, Dummkopf) gibt es unter anderem auch “Keep it simple and stupid” (Halt es einfach und dumm). In jedem Fall ist hier aber gemeint, dass man nicht den klügsten Code schreiben soll, den die Menschheit je gesehen hat. Denn das birgt die Gefahr, das niemand außer dir diesen Code versteht. Vielleicht verstehst sogar du diesen Code in ein paar Monaten schon nicht mehr. Und auch wenn du glaubst, dass könne ja gar nicht sein, dann glaub mir, du irrst.

Finde für deine Anwendung die einfachste Lösung.

  • Du kannst bei einer Fallunterscheidung 100 verschiedene Fälle abdecken? Decke nur die ab, die wirklich eintreten können.
  • Du kannst neben der Adresse noch die Farbe des Hauses mit ermitteln? Bringt das wirklich einen Mehrwert.

Mache dir Gedanken, ob ein größerer Aufwand oder eine höhere Komplexität wirklich zum Erreichen des Zieles der Software beitragen. Oft braucht es nicht die eierlegende Wollmilchsau, sondern deine Software wird viel besser, wenn sie das, was sie tun soll, wirklich gut und zuverlässig tut.

Root Cause Analysis

Ergänzende eigene Gedanken zu clean-code-developer.de

Auch diese Praxis soll, ähnlich wie die Pfadfinderregel gestern, dafür sorgen, dass unsere Software wandelbar bleibt. Hier räumst du aber nicht einfach nur auf und hinterlässt die Welt bzw. unsere Codebasis besser als sie ist. Sondern versuchst, wenn du über etwas unvorhergesehenes, einen Fehler oder etwas, das wir nicht verstehen, stolperst, nachzuforschen.

Anstatt z.B. bei einem Fehler einfach ein if zu nutzen, damit der Fehler nicht weiter auftritt, solltest du verstehen, warum dieser Fall überhaupt auftreten kann. Vielleicht kannst du damit dann sogar ein größeres Problem beheben, als wenn du nur kurz irgendwo ein Pflaster drauf klebst. Und wenn nicht, dann hast du zumindest etwas dabei gelernt, weil du dich mit Code beschäftigt hast, den du vermutlich noch nicht kanntest. So trägt diese Praxis auch zur Verbesserung deiner Fähigkeiten bei.