Qualitätssicherung beim Programmieren: So bleibt Ihr Code sauber und nachhaltig
Einfach programmiert hält besser und länger
Wer außergewöhnlich gut in seinem Job ist, will das natürlich auch zeigen. Gerade bei Entwicklern kann Eitelkeit aber auch kontraproduktiv sein. Lösen Sie Probleme im Code einfach, statt verschachtelte Abhängigkeiten und komplexe Konstrukte aufzubauen. Denn je weniger andere können müssen, um den Code hinterher lesen zu können, desto besser. Denken Sie schon beim Schreiben des Codes an dessen Wartung, den Kunden oder Ihren Nachfolger und nehmen Sie sich lieber mehr Zeit, um klar zu strukturieren und zu vereinfachen als beeindruckende Kniffe auszuknobeln.
So kommentieren Sie Ihren Code richtig
Keiner spricht gerne drüber, aber fast jeder Programmierer hat es schon erlebt. Beim Öffnen eines älteren Stücks Code fragen Sie sich, was das für ein Programm ist, wofür das gut sein soll und wer so was überhaupt geschrieben hat, nur um dann herauszufinden, dass Sie es selbst waren. Schlechte Kommentare und eine unsaubere Dokumentation können Sie jahrelang verfolgen. Besonders bitter: Selbst wenn Sie sich beim Kommentieren viel Mühe geben, kann es sein, dass Ihnen die eigenen Notizen schon in einem Jahr nichts mehr sagen, weil der Kontext beim Schreiben selbstverständlich war, jetzt aber komplett fehlt. Prüfen Sie deswegen Ihre Kommentare auf Herz und Nieren:
- Schreiben Sie den Code so, dass er sich selbst erklärt (zum Beispiel Variablen nach dem Inhalt benennen)
- Kommentieren Sie nur dort, wo sich der Code nicht selbst erklärt
- Machen Sie Abhängigkeiten zu anderen Programmen deutlich
- Bearbeiten Sie selbst alte Kommentare immer wieder. Je länger Sie brauchen, um sich in alten Code wieder hineinzudenken, umso dringender braucht er neue Kommentare
- Beschreiben Sie die Lösungen von Problemen, die Ihnen begegnet sind, aber auch das Problem selbst
Am Anfang war der Test
Wie oder vielmehr wann Ihre Software getestet wird, kann nicht nur den eigenen Code verbessern, sondern sogar entscheidend zum Projekterfolg beitragen. Denn bei Unternehmen, die testgetrieben entwickeln, ist der erste Schritt, das ideale Ergebnis bereits anzunehmen. Dann werden Tests geschrieben, die sich dazu eignen, diesen Erfolg zu kontrollieren. Erst dann wird begonnen zu Coden, und zwar optimiert auf die zuvor erstellten Tests. So schreibt der Entwickler zu keiner Zeit ins Ungewisse und kann zielorientiert arbeiten. Die Software wird immer wieder getestet, sodass große Abweichungen vom Ziel gar nicht erst entstehen und der Kunde ist zufrieden, weil er genau das bekommt, was er bestellt hat. Mit Unit-Tests können außerdem Teilerfolge unkompliziert kontrolliert werden und das motiviert die Entwickler. Testgetriebenes Entwickeln lohnt sich also, denn es vereinfacht die Organisation der Arbeit und ermöglicht es, mit mehreren Teams simultan zu arbeiten.
Standardisierung macht das Leben einfach
Code ist zwar für Rechner gemacht, um ihn ordentlich zu pflegen, braucht es aber doch noch Menschen. Damit diese den Code überhaupt richtig lesen können, sollten sich alle im Projekt streng an dieselben Coding Standards halten. Klingt spießig, ist an sich auch nicht schwer, erfordert allerdings Konsequenz. Denn den Arbeitsfluss zu unterbrechen, um einen Blick ins Handbuch zu werfen, nur damit ein Absatz richtig formatiert wird, der im Produkt ohnehin nicht sichtbar ist, kann sich wie Schikane anfühlen. An dieser Stelle hilft ein Perspektivenwechsel, denn wer mit diesem Code später arbeitet, wird es Ihnen danken.
Qualitätssicherung beim Coden: So macht es die exali-IT
Wir haben in unserer IT-Abteilung nachgefragt, wie dort eine gleichbleibend hohe Qualität des Codes gewährleistet wird. Aus den Antworten haben wir diese drei Learnings zusammengestellt:
1.Regelmäßige Reviews
Bevor ein neues Feature bei exali.de implementiert wird, durchläuft es drei Code Reviews. Zuerst prüft der Entwickler selbst seinen Code, als nächstes ein Entwickler, der beim Schreiben nicht beteiligt war, und zum Schluss die Entwicklungsleitung. Wird ein Fehler oder eine Ungenauigkeit entdeckt, beginnt dieser Prozess wieder von vorne. Erst wenn alle Reviews erfolgreich waren, folgt der Upload ins Live-System.
2.Enforced Coding Guidelines
Bei exali.de ist der Coding Standard PSR bei der PHP-Programmierung nicht nur empfohlen, sondern verpflichtend. Das heißt, dass ein Verstoß gegen die Richtlinie beim Testen als Fehler ausgegeben und auch entsprechend behandelt sowie korrigiert wird. Schon allein wegen der Masse an Code, die jeden Tag über die Bildschirme der IT flimmert, wären Ungenauigkeit und Unübersichtlichkeit nicht tragbar. Wir setzen mit PSR auf einen etablierten Standard, damit auch neue Kollegen schnell eingearbeitet werden können oder im besten Fall sogar schon Kenntnisse mitbringen.
3.Keine Angst vor Veränderung
Wenn eine Website in die Jahre kommt, bedeutet das Arbeit. Denn zugegeben, irgendwas ist immer und wenn tatsächlich mal nichts ist, dann kommt eben eine neue PHP-Version, die Teile des Codes unbrauchbar macht. So ging es uns, als der Wechsel von PHP-Version 5 auf Version 7 anstand. Der Grund: Funktionen, die wir mehrfach verwendet haben, wurden nicht länger unterstützt. Also mussten Teile der Code-Basis umgeschrieben und auf links gedreht werden. Trotz guter Codequalität wurde das Projekt zum Kraftakt. Schlechter Code hätte den Versionswechsel so gut wie unmöglich gemacht.
Fehler im Code oder andere Risiken: Die IT-Haftpflicht schützt
Ein kleiner Fehler im Code kann zu hohen Schadenersatzforderungen führen. Das zeigt beispielsweise dieser echte exali.de Schadenfall, in dem ein Programmierer durch einen Fehler für viel mehr Gewinner in einem Gewinnspiel sorgte als vorgesehen: Programmierer sorgt für unerwartete Gewinne: 11.000 Euro Schadenersatz! In solchen Fällen schützt Sie die IT-Haftpflicht über exali.de, egal ob Sie Software-Entwickler, Programmierer oder anderer IT-Freelancer oder -Dienstleister sind. Der Versicherer prüft immer auf eigene Kosten, ob eine Forderung berechtigt ist, wehrt unberechtigte Ansprüche ab und bezahlt berechtigte Schadenersatzforderungen.
Ihre IT-Haftpflicht können Sie in wenigen Minuten online abschließen. Sie haben Fragen? Unsere Kundenbetreuer sind gerne persönlich für Sie da. Ohne Callcenter oder Warteschleife.