Ich habe versucht, eine Übergangsanleitung für Swift 2 zu finden, insbesondere Entwickler, auf die Entwickler bei der Migration von Swift 1 / 1.2-Codebasen auf Swift 2 achten sollten. Offensichtlich haben Sie den Migrationsassistenten in Xcode, aber das nur wirklich deckt die Arbeit des Esels ab und nicht die Sachen, die etwas intelligenteres Denken erfordern.
Basierend auf den Ressourcen, die ich auf Swift 2 finden konnte, habe ich die folgende Checkliste zusammengestellt:
NSError
und rufen Sie Delegaten erneut auf, um behebbare Fehler zu melden. enums
konform zu ErrorType
, um eigene sinnvolle Fehler zu definieren. do { }
, um den Bereich zu steuern und große Ressourcen frühzeitig freizugeben do { ... } while
Schleifen in repeat { }
(um Zweideutigkeiten zu entfernen und die Lesbarkeit zu verbessern) guard
, um früh zurückzukommen und übermäßige Einrückungen zu vermeiden defer
für Bereinigungscode wie das Schließen von Dateien usw. viewAnimationOptions = [.Repeat, .CurveEaseIn, .TransitionCurlUp]
) public
accessor specifiers, die bisher nur zur Unterstützung von Tests benötigt wurden. Verwenden Sie stattdessen @testable
und import MyApp
. switch
-Anweisungen für Einzelfälle auf die neue if case .MyEnumCase(let value) = bar() where value != 42 { doThing(value) }
for
loops mit if
filtering statements z. %Code%
Quellen:
СсылкаWas habe ich verpasst?
Ein Teil des Problems besteht darin, dass sich Swift 2 über die WWDC hinweg weiterentwickelt hat. Selbst die diesjährigen WWDC-Videos sind bereits potenziell veraltet oder zumindest nicht die ganze Geschichte.
Leider gibt es zu dieser Zeit keinen offiziellen "Übergangsleitfaden" von Apple als solcher.
Die Die Swift-Programmiersprache (Swift 2) wird immer von Apple aktualisiert, wenn sie eine neue Version von Swift veröffentlicht und ist daher eine der besten Quellen für aktuelle Informationen über Swift 2 (oder höher). Es gibt viele Erklärungen und Beispielcode der gesamten Sprache, nicht nur die Änderungen, aber dies ist definitiv zumindest eine der besten Quellen für die Informationen, die Sie gerade suchen.