/* Page prose (de) */
"MigrationStrategy" = "# Eine pragmatische Migrationsstrategie\n\nDu schreibst keine App an einem Wochenende neu, und das solltest du auch nicht.\nMigriere entlang eines Pfads, der bei jedem Schritt sicher ist:\n\n**1. Umhülle Legacy-Callbacks an der Grenze.**  \nDer Schritt mit dem größten Hebel. Nimm eine Completion-Handler-API und gib ihr\nein `async`-Gesicht mit einer **Continuation**. Nun kann alles *oberhalb* dieser\nHülle modern sein, während die alte Implementierung darunter unangetastet\nweiterläuft:";
"MigrationStrategy-2" = "**2. Schreibe allen *neuen* Code mit `async`/`await`.**  \nHör auf, Completion Handler hinzuzufügen. Neue Features starten modern und rufen\ndort, wo nötig, in die umhüllte Legacy-Schicht.\n\n**3. Ersetze Ad-hoc-Locking durch Actors.**  \nWo immer du eine serielle Warteschlange, ein `NSLock` oder ein Semaphor mit\nZählwert 1 findest, das irgendeinen gemeinsam genutzten Zustand schützt, ist das\nein erstklassiger Kandidat, um ein **Actor** zu werden. Die Isolation wandert\nvon \"jeder Aufrufer muss sich an die Regel erinnern\" zu \"der Compiler erzwingt\nsie\".\n\n**4. Übernimm `@MainActor` für die UI.**  \nAnnotiere deine View Models und UI-berührenden Typen mit **`@MainActor`**. Das\nlöscht eine ganze Kategorie von \"Ich habe vergessen, zum Hauptthread\nzurückzuspringen\"-Bugs, weil der Compiler nun die Hauptthread-Zugehörigkeit für\ndich verfolgt.\n\n**5. Bewege dich schrittweise zur Data-Race-Sicherheit von Swift 6.**  \nSchalte die strengere Nebenläufigkeitsprüfung ein und behebe Warnungen ein Modul\nnach dem anderen. Jede Warnung ist der Compiler, der auf eine reale (oder\npotenzielle) Data Race zeigt, die früher unsichtbar war. Behandle sie als\nTo-do-Liste, nicht als Notfall. Der Sprachmodus lässt dich schrittweise\nvoranschreiten statt alles auf einmal.\n\n---\n\nDer rote Faden: **modernisiere an den Nähten.** Umhülle die Grenze, baue die\nneue Arbeit auf der modernen Seite davon auf und lass die alte Seite mit der Zeit\nschrumpfen, statt eine Neuschreibung mit einem großen Knall zu verlangen.\n\n[Zurück](@previous)  |  Seite 6 von 8  |  [Weiter: Welches Werkzeug wann](@next)";
