Boehrsi.de - IT und Gaming Blog

I'm a coder - Die Workaround-Hölle

Erstellt am event Uhr von account_circle Boehrsi in label Boehrsi
I'm a coder - Die Workaround-Hölle Bild

Eigentlich möchte man defensiv programmieren und entsprechend dem Nutzer möglichst viele Fehler vom Leib halten, das macht auch Sinn. Doch Workarounds und Fallbacks über und über einzusetzen, sodass man irgendwann eher Probleme einbaut als sie zu verhindern, ist meiner Meinung nach schlimmer als ein ordentlich kommunizierter Fehler. Als Beispiel würde ich hier ein Auto nehmen. Es hat Benzin im Tank und falls selbiger bald leer ist fährt man zur Tankstelle. Sollte diese geschlossen sein, macht es Sinn zur Sicherheit einen Kanister mit Benzin auf Reserve zu haben. Was aber eher wenig Sinn macht, ist alle zufällig herumstehenden Kanister des Nachbarn in den Tank zu schütten und zu hoffen es war Benzin dabei. Mit diesem Vorgehen hat man vielleicht in wenigen Fällen Glück, meist ist es aber eher eine wenig zielführende Idee.

Vor kurzem bin ich über derartige Ansätze gestolpert, die eine externe API bedienen und auf Teufel komm raus versuchen mögliche Probleme irgendwie zu umgehen. Dadurch gab es falsche Daten für den Nutzer und nicht reproduzierbare Situationen für die Entwickler. Vor allem entstanden Folgefehler, die meist schlimmer waren, als das was die Workarounds eigentlich umgehen wollten.
Alles in allem werde ich das Ganze nun stumpf neu schreiben. Dabei werde ich alle möglichen validen Wege der API bedienen und im Fehlerfall direkt kommunizieren, statt den Nutzer im Glauben zu lassen alles wäre in Ordnung und später landet er dann doch im Fehlerfall oder bemerkt nicht einmal das ein Fehler aufgetreten ist.

Fehler an sich sind oft kein großes Problem, sie passieren halt, vor allem wenn Systeme miteinander interagieren und Nutzereingaben verarbeitet werden. Es geht darum die Situation sinnvoll und logisch zu behandeln, was für mich bedeutet: klare Kommunikation, nachvollziehbare und reproduzierbare Abläufe und nach Möglichkeit Hilfestellungen für den Nutzer. So kann der Nutzer mit eventuellen Fehlern umgehen, sein Handeln anpassen oder den Fehler weiterleiten und so vielleicht doch noch zum Ziel kommen.

Kommentare  
Kommentar erstellen
Mit dem Abschicken des Kommentars erklären sie sich mit der in der Datenschutzerklärung dargelegten Datenerhebung für Kommentare einverstanden. Spam, unangebrachte Werbung und andere unerwünschte Inhalte werden entfernt. Das Abonnieren via E-Mail ist nur für E-Mail Adressen erlaubt die Sie rechtmäßig administrieren. Widerrechtliche Abonnements werden entfernt.