Profiling mit dem SwiftUI-Instrument
Finden Sie Hotspots bei Neuzeichnungen mit Instruments.
Profiling mit dem SwiftUI-Instrument ist eine kostenlose Swift Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Swift Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Swift Academy-Kurs umfasst insgesamt 4 Lektionen.
Warum profilieren?
Arbeit an der Performance ohne Messungen ist ein Ratespiel. Das SwiftUI Instrument in Instruments zeigt genau, welche Views aktualisiert werden und wie oft.
Das Instrument öffnen
Wählen Sie in Xcode Product > Profile oder drücken Sie Command-I, um Instruments zu starten, und wählen Sie anschließend die Vorlage SwiftUI. Starten Sie Ihre App und bedienen Sie den langsamen Bildschirm.
Anzahl der View-Body-Auswertungen
Das Instrument meldet, wie oft der body jeder View ausgewertet wurde. Unerwartet hohe Werte weisen direkt auf eine zu häufige Neuberechnung hin.
Lange View-Body-Auswertungszeiten
Betrachten Sie neben den Anzahlen auch die Dauer der body-Auswertungen. Ein body, der selten aufgerufen wird, aber 30 ms benötigt, ist genauso problematisch wie einer, der ständig aufgerufen wird, dafür aber kaum Zeit kostet.
Spur zur Update-Ursache
Das Instrument erklärt, warum eine View aktualisiert wurde: welcher State, welches Binding oder welche beobachtete Eigenschaft sich geändert hat. So erkennen Sie genau den Auslöser, den Sie eingrenzen müssen.
Identitätswechsel erkennen
Wenn eine View wiederholt erstellt und zerstört statt aktualisiert wird, sehen Sie in der Zeitleiste neue Instanzen. Das deutet meistens auf einen Identitätsfehler hin, etwa durch index ids oder wechselnde Verzweigungen.
Hangs und Hitches
Kombinieren Sie das SwiftUI Instrument mit den Instrumenten Hangs und Animation Hitches, um eine aufwendige body-Auswertung mit einem sichtbaren Ruckeln auf dem Bildschirm in Verbindung zu bringen.
Eigene Zeit vs. Zeit der untergeordneten Views
Prüfen Sie, ob die Zeit im eigenen body einer View oder in ihren untergeordneten Views verbraucht wird. So erkennen Sie, ob Sie die View selbst optimieren oder die Korrektur weiter unten im Baum vornehmen sollten.
Ein realistisches Szenario reproduzieren
Profilieren Sie den tatsächlichen Ablauf aus Sicht der Nutzenden, etwa das Scrollen durch eine vollständige Liste oder die Eingabe in ein Feld, nicht nur einen statischen Bildschirm. Performance-Probleme treten bei Interaktionen auf, nicht im Ruhezustand.
Iterieren: messen, korrigieren, erneut messen
Nehmen Sie jeweils eine Änderung vor, etwa den State einzugrenzen, Equatable hinzuzufügen oder eine View aufzuteilen, und profilieren Sie anschließend erneut. Vergewissern Sie sich, dass die Anzahl der body-Auswertungen gesunken ist, bevor Sie fortfahren. Vermeiden Sie es, ungeprüfte „Optimierungen“ anzuhäufen.
Für die Profilerstellung korrekt kompilieren
Profilieren Sie einen Release-Build. Debug-Builds deaktivieren Optimierungen und verursachen zusätzlichen Aufwand. Dadurch entstehen irreführende Werte, die nicht der Performance der veröffentlichten App entsprechen.
Schnelltest: Profiling
Testen Sie Ihr Verständnis des SwiftUI Instruments.
Zusammenfassung: Profiling mit dem SwiftUI Instrument
Das SwiftUI Instrument zeigt die Anzahl und Dauer der body-Auswertungen sowie die Ursache jeder Aktualisierung. Dadurch werden übermäßige Neuberechnungen und Identitätswechsel sichtbar. Kombinieren Sie es mit Hangs und Animation Hitches, unterscheiden Sie zwischen der Zeit in der View selbst und in ihren untergeordneten Views und profilieren Sie realistische Abläufe in einem Release-Build.
Optimieren Sie iterativ: messen, eine Korrektur anwenden und erneut messen. So wird jede Änderung durch Daten bestätigt.
Häufig gestellte Fragen
Ist die Lektion „Profiling mit dem SwiftUI-Instrument“ kostenlos?
Ja — der vollständige Text von „Profiling mit dem SwiftUI-Instrument“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Swift Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Swift Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Profiling mit dem SwiftUI-Instrument“?
Finden Sie Hotspots bei Neuzeichnungen mit Instruments. Du übst Swift Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Swift Academy zu starten?
Keine Vorkenntnisse erforderlich. Swift Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „Profiling mit dem SwiftUI-Instrument“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Swift Academy-Lektion Code schreiben und ausführen?
Ja. Jede Swift Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- View-Identität verstehen
- Neuberechnung von Body minimieren
- Equatable Views und @State-Sichtbarkeit
- Profiling mit dem SwiftUI-Instrument