Bei Study anmelden

Diese Seite ist der öffentliche eMedys-Auftritt. Dein Konto und deine privaten Inhalte laufen auf Study; die Anmeldung öffnet sich dort in einem eigenen Fenster.

Vorbereiten, prüfen, sichtbar machen

Halte einen unvollständigen Kandidaten vom lesenden Programm fern.

Die Pipeline führt einen sichtbaren Stand und einen getrennten Kandidaten. Schreiben und Validieren verändern zunächst nur den Kandidaten. Erst ein bestandener Vertrag erlaubt den Wechsel des sichtbaren Namens. Unter passenden Dateisystembedingungen kann ein Namensaustausch atomare Sichtbarkeit liefern: Leser des Namens erhalten eine vollständige alte oder neue Version. Das ist noch keine Zusage über dauerhafte Speicherung nach Stromausfall. Auch Dateisystemgrenzen, offene Leser und Plattformverhalten müssen zur konkreten Implementierung passen. Unser Dictionary-Modell stellt nur die logische Veröffentlichung dar und beweist keine Eigenschaft eines echten Dateisystems.

Ein Beispiel

Sichtbar ist catalog.current mit drei gültigen Einträgen. catalog.pending enthält nach einem Schreibfehler nur zwei unvollständige Einträge. Die Prüfung scheitert; Leser bleiben bei den drei alten Einträgen. Dasselbe gilt beim simulierten Fehler unmittelbar vor dem Namenswechsel. Erst ein vollständig gültiger Kandidat darf den sichtbaren Stand ersetzen. Python 3.11 · Lehrbeispiel def publish(current, candidate, valid): if not valid: return current, "validation_failed" return candidate, "published" print(publish("Version 3", "unvollständig", False)) print(publish("Version 3", "Version 4", True)) Erwartete Ausgabe ('Version 3', 'validation_failed') ('Version 4', 'published')

Mit meinem Konto üben →

Alle Lernwege