Einfache Memo -App mit Uikit & Swiftui
Datenerneuerung
viewWillAppear -In dem Blattformular, das von iOS13 bis standardmäßig unterstützt wird, kann es nicht verwendet werden.Notification (Beobachtermuster)Wenn es einen Ort gibt, an dem in Storyboard keine Einschränkung entsteht, wird eine rote Linie angezeigt.
Kerndaten
Rahmen für die Erhaltung und Zwischenspeicherung von Daten innerhalb des Terminals
Aufgaben, die UI -Blöcke verursachen, können im Hintergrund ausgeführt werden
Hilft bei der Übereinstimmung mit der Ansicht zwischen der Ansicht (Tabellenansicht, Sammlungsansicht usw.) und den Daten
Es ist einfach, Daten -CRUD zu erstellen, ohne das DB -Management erforderlich zu machen und für das Versionsverwaltung einfach.
Kerndatenstapel
NSPersistentContainer -Modell, Kontext, KoordinatorDelegieren
Schließung (Swift) entkommen (Swift)
self beziehen, muss das Selbst explizit angezeigt oder in die Erfassungsliste enthalten sein. Darüber hinaus sollte im Fall des Fluchtverschlusses die schwache Referenz in die Erfassungsliste aufgenommen werden, damit der Speicher -Rick aufgrund einer starken Referenz nicht auftritt.Starker Referenzzyklus (Swift)
Auch wenn die Variable durch starke Referenz zwischen zwei oder mehr Instanzen als NIL deklariert wird, beträgt der Bogen nicht 0, sodass das Speicherleck erzeugt wird, ohne freigegeben zu werden.
Lösung
Verwenden Sie schwache Referenz
Variablen oder Eigenschaften, die vor der Erklärung weak Schlüsselwörter zugewiesen wurden, haben eine schwache Referenz. Wenn Sie also eine Variable deklarieren, die diese Instanz als NIL stark bezeichnet, kann der ARC freigegeben werden, ohne zu stoppen.
Verwendung von Lächeln
Im Gegensatz zur schwachen Referenz wird es im selben oder länger als das Leben einer Instanz verwendet. Im Gegensatz zu einer schwachen Referenz wird es verwendet, wenn erwartet wird, dass es sich immer auf den Wert bezieht.