Heim >Backend-Entwicklung >Python-Tutorial >Bitten Sie um Vergebung, nicht um Erlaubnis: Wann ist dieser Programmierstil angemessen?
„Bitte um Vergebung, nicht um Erlaubnis“ in der Programmierung
Der Ausdruck „bitte um Vergebung, nicht um Erlaubnis“ wird oft verwendet, um einen Programmierstil zu beschreiben, der begünstigt Einfachheit und Robustheit über Korrektheit. Dieser Stil basiert auf der Idee, dass es besser ist, Ausnahmen abzufangen und sie elegant zu behandeln, als zu versuchen, jeden möglichen Fehler vorherzusehen und Code zu schreiben, um ihn zu verhindern.
Um Erlaubnis bitten vs. um Vergebung bitten
Im Stil „um Erlaubnis bitten“ ist der Code so geschrieben, dass er auf Bedingungen prüft, die eine Ausnahme verursachen könnten, bevor eine Aktion ausgeführt wird, die zu einer Ausnahme führen könnte Ausnahme. Zum Beispiel:
if os.path.exists(filename): with open(filename) as f: data = f.read() else: raise FileNotFoundError(f"File {filename} not found.")
Im Stil „um Vergebung bitten“ wird Code geschrieben, um einfach zu versuchen, die Aktion auszuführen und eventuell auftretende Ausnahmen abzufangen:
try: with open(filename) as f: data = f.read() except FileNotFoundError: print(f"File {filename} not found.")
Warum „Bitte um Verzeihung“ bevorzugt wird
Es gibt zwei Hauptgründe, warum der „Bitte um Verzeihung“-Stil im Allgemeinen bevorzugt wird der Stil „um Erlaubnis bitten“:
1. Parallelitätsprobleme:
In einer gleichzeitigen Umgebung, wie etwa einem Multithread-Programm oder einem Programm, das mit externen Ressourcen interagiert, kann sich der Zustand des Systems zwischen dem Zeitpunkt, an dem eine Berechtigungsprüfung durchgeführt wird, und dem Zeitpunkt ändern wann die Aktion ausgeführt wird. Dies kann dazu führen, dass falsche Ergebnisse oder Ausnahmen unnötigerweise ausgelöst werden.
2. Zu restriktive Berechtigungsprüfungen:
Berechtigungsprüfungen können zu restriktiv sein und verhindern, dass Code tatsächlich mögliche Aktionen ausführt. Beispielsweise kann die Prüfung auf Existenz einer Datei vor dem Öffnen fehlschlagen, wenn die Datei nach der Prüfung, aber vor dem Öffnungsvorgang erstellt wird.
Wann „Bitte um Verzeihung“ verwendet werden sollte
Der Stil „um Verzeihung bitten“ ist angemessen, wenn:
Beispiel
Das in der Frage bereitgestellte Beispiel zeigt eine angemessene Verwendung des Stils „um Vergebung bitten“. Die Überprüfung des Vorhandenseins des Balkenattributs vor dem Zugriff darauf kann fehlschlagen, wenn das Attribut später festgelegt wird. Stattdessen sollte der Code einfach versuchen, auf das Attribut zuzugreifen und eventuell auftretende AttributeError-Ausnahmen abzufangen.
Es ist wichtig zu beachten, dass der Stil „um Verzeihung bitten“ nicht bedeutet, dass Programmierer schlampig sein oder Code schreiben sollten ist anfällig für Ausnahmen. Es deutet vielmehr darauf hin, dass es besser ist, Ausnahmen elegant zu behandeln, als zu versuchen, jeden möglichen Fehler vorherzusehen.
Das obige ist der detaillierte Inhalt vonBitten Sie um Vergebung, nicht um Erlaubnis: Wann ist dieser Programmierstil angemessen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!