Also, mit "Let It Crash" Mantra Erlang-Code soll resistent gegen grausame Ereignisse wie unerwartete ziehen den Stecker, Hardware-Fehler und instabile Netzwerkverbindungen sein.Wann "lasst es abstürzen" und wann soll der Code in Erlang verteidigt werden?
Auf der anderen Seite gibt es defensive programming.
Ich bin neu in Erlang, ich frage mich, wie zu wissen, wann ich den Prozess nur abstürzen will und wenn ich will, dass es den Fluss mit if
, case..of
verteidigen, geben Sie Wachen?
Angenommen, ich habe ein Authentifizierungsmodul, das bei erfolgreicher Authentifizierung true
/ zurückgeben kann. Sollte es nur ein erfolgreiches Szenario geben und abstürzen, wenn die Benutzerauthentifizierung aufgrund eines falschen Login/Passwortes fehlschlägt?
Wie sieht es mit anderen Szenarien aus, z. B. ob ein Produkt nicht in der Datenbank gefunden wird oder die Suchergebnisse leer sind?
Ich kann, glaube ich, Verteidigungskonstrukte nicht vollständig ignorieren, da irgendwelche Wächter in ihrer Natur sind, den "normalen" Fluss der App zu verteidigen?
Gibt es eine Faustregel zur Verteidigung und wann zum Absturz?