JAX 08: Keynote - Fehler - Na und?

von Thomas Bahn,
assono GmbH, Standort Kiel,



Bernd Löchner
Fehler - Na und!

"Everything is broken."  - Bob Dylan

Fehler sind

  • allgegenwärtig
  • schlecht für's Geschäft
  • schlecht für's Ansehen
  • schlecht für den DAX
  • gefährlich oder tödlich
  • spektakulär

Fehler haben eine technische Seite (jemand hat einen Fehler gemacht) und eine organisatorische: Fehler wurde nicht durch Test aufgedeckt.

Kontext von Komponenten: Benutzer, Nachbarsysteme und Laufzeitplattform

Fehler ist ein unscharfer Begriff, es gibt Varianten, Abstufungen, usw.
Eigentlich: Fehler ist eine ungewöhnliche Situation, die besonderer Behandlung bedarf.

Separation of concerns: Normalfall von Fehlerfall trennen und getrennt behandeln

Gute Fehlerbehandlung ist entscheidend!
Fehlerbehandlung ist die operationelle Seite nichtfunktionaler Anforderungen

Klassische Fehlerbehandlung

  • Rückgabewert einer Funktion signalisiert Fehler
  • Fehler in globaler Variable
  • immer selbst nachsehen, ob ein Fehler passiert ist

    Moderner: Ausnahmen
  • Kombination von Mitteilen des Fehlers und Managen des Kontrollflusses - ohne beides zu vermengen
  • Vermeide Missbrauch: Make exceptions exceptional!

    Richtiges Exceptionhandling ist auch nicht ohne...
    Fehler in der Fehlerbehandlung...
    Fehler in finally können Rest im Block überspringen

    Sicherheitsfassaden: Firewalls für Fehler
    Parameter werden beim Ein-/Ausgehen aus der Komponente validiert (zwischen Kompontente und Rest der Welt)
    Separation of Concern

    Weitere Patterns
    Eindeutige Fehler-Identifikation
  • erlaubt Verfolgung des Fehlers durch die Logs
  • statischer Teil: Wo war der Fehler (Klasse, Zeile)
  • dynamischer Teil: Womit hatte der Code zurzeit gearbeitet: Datei, Datensatz...
    Trennung der Ausnahmen
  • technische Ausnahmen
  • fachliche Ausnahmen
    Persistentes Logging
    Expliziter Fehlermanager
    Den Anwender mit einbeziehen
Veranstaltung Fachbeitrag JavaScript Sonstiges

Sie haben Fragen zu diesem Artikel? Kontaktieren Sie uns gerne: blog@assono.de

Sie wollen eine individuelle Lösung? Kontaktieren Sie uns

Weitere interessante Artikel

Sie haben Fragen? Wir sind für Sie da.

Wir verwenden Ihre Daten, um Sie einmalig per E-Mail zu kontaktieren. Wir geben Ihre Daten nicht an Dritte weiter. Siehe: Datenschutzhinweise
assono GmbH

Standort Kiel (Zentrale)
assono GmbH
Lise-Meitner-Straße 1–7
24223 Schwentinental

Standort Hamburg
assono GmbH
Bornkampsweg 58
22761 Hamburg

Telefonnummern:
Zentrale: +49 4307 900 407
Techn. Hotline: +49 4307 900 403
Vertrieb: +49 4307 900 402

E-Mail-Adressen:
kontakt@assono.de
bewerbung@assono.de