CloudCastle Clock

🇷🇺 Русский · 🇬🇧 English · 🇩🇪 Deutsch · 🇫🇷 Français · 🇪🇸 Español · 🇮🇹 Italiano

CallbackClock — Uhr auf einem Closure

Zweck

Die Quelle des Zeitpunkts ist ein beliebiges Closure: eine Brücke zu nicht standardmäßigen Zeitquellen (externer Dienst, Szenario-Generator).

Wofür und wie zu verwenden

Integration einer fremden Zeit-API oder komplexer Logik zur Ausgabe von Zeitpunkten, ohne eine eigene Uhr-Klasse zu schreiben.

Beispiel

$clock = new CallbackClock(
    fn (): DateTimeImmutable => $externalTimeService->current(),
    'UTC',
);

Anti-Patterns

Das Closure muss schnell und frei von Nebenwirkungen sein — es wird bei jedem Lesevorgang aufgerufen.

Lebenszyklus

flowchart LR
    A[Closure] -->|DateTimeImmutable| B[CallbackClock]
    B --> C[ClockInterface consumers]

Funktionsvergleich mit Konkurrenten

Aspekt🏆 CloudCastlesymfonycarbonlcobuccibesteergebnis
Beliebige Quelle des Zeitpunkts✅❌❌❌❌❌
Deklarierte Zeitzone✅❌❌❌❌❌
Vollständiger Uhr-Vertrag des Pakets✅❌❌❌❌❌
Closure statt Vererbung✅❌❌❌❌❌
Gesamt🏆 400000

← Zurück zur Funktionsliste


🇷🇺 Русский · 🇬🇧 English · 🇩🇪 Deutsch · 🇫🇷 Français · 🇪🇸 Español · 🇮🇹 Italiano