Suche…


Bemerkungen

Core Data ist ein Framework in den verschiedenen OS SDKs von Apple, einschließlich, aber nicht beschränkt auf iOS und OS X. Es hat zwei Hauptrollen, eine Modellschicht und eine Persistenzschicht. Die Modellebene wird zur Verwaltung von Modellobjekten und persistenten Daten verwendet. Sie können einfach Daten in einer objektorientierten Oberfläche speichern und verwalten. Zu den Hauptfunktionen gehören das Filtern, Abfragen, Sortieren, Behalten von Daten und das Erstellen von Beziehungen zwischen Daten. Weitere Themen, die für Core Data-Projekte von Interesse sind, sind NSPredicate, Threading und andere.

Eine Beispielanwendung von Core Data könnte eine Katalog-App für Ihre lokale Bibliothek sein. In der Katalog-App kann ein Bibliothekar Bücher hinzufügen oder entfernen. Sie können Bücher auch nach Genre filtern, nach Veröffentlichungsdatum sortieren oder nach einer bestimmten Autorenarbeit suchen. Eine Entität „Book“ hätte verschiedene Attribute wie Titel, Autor, Veröffentlichungsdatum, ISBN, Rufnummer usw. In Core Data, einschließlich des obigen Beispiels, können auch Daten gespeichert werden, die von einem Server erfasst wurden.

Hauptkomponenten des Frameworks sind:

  • Datenmodelle (Entitäten, Attribute und Beziehungen)
  • Core Data Stack (NSPersistentStoreCoordinator, NSManagedObjectModel, NSManagedObjectContext)
  • NSFetchRequest
  • NSFetchedResultsController

Quellen:

Framework-Dokumentation

Programmieranleitung

Core Data Versionshinweise 2016

CoreData & Parallelität

Beachten Sie, dass CoreData NICHT threadsicher ist. Wenn Sie also beispielsweise einen Hintergrund-Thread verwenden müssen, um mit ManagedObjects zu arbeiten, müssen Sie Folgendes beachten: PrivateQueue- / MainQueue -ManagedObjectContexts.

Aus der Dokumentation von Apples: Core Data erwartet, dass es in einem einzigen Thread ausgeführt wird. Sie sollten niemals verwaltete Objektkontexte für Threads freigeben. Dies ist eine harte Regel, die Sie nicht brechen sollten.

Erstellen Sie Ihr erstes Modell

  • Wählen Sie die .xcdatamodeld Datei aus. Sie werden feststellen, dass Sie keine Entitäten haben. Sie müssen selbst einen erstellen. Am unteren Rand von Xcode wird eine Schaltfläche mit der Aufschrift "Add Entity" (Entität hinzufügen) angezeigt. Sie haben eine neue Entität, mit der Sie am Projekt arbeiten können.

Datenmodell

  • In diesem Schritt sind einige Punkte zu erwähnen. Erstens haben Sie Ihren Entitätsnamen hier geändert, und die Entität erhält den Namen Person . Im Abschnitt "Attribute" fügen Sie Ihrem Modell die Attribute hinzu. Diese Schaltfläche befindet sich am unteren Rand des Abschnitts. Sie können beliebige Attribute hinzufügen, die für Ihre App relevant sind. Wenn Sie beispielsweise eine Kontaktbuch-App erstellen, brauchen Sie nicht, dass das Modell einer Person ein Attribut von Arms mit dem Typ Boolean . Sie sollten es in Verbindung mit Ihrer App behalten. Fügen Sie beispielsweise ein telephone mit dem Typ Integer hinzu oder wenn Sie "String" mögen. Sie haben verschiedene Optionen zur Auswahl, von Booleans bis zu Dates und mehr.

Modell erstellen

  • Wenn Sie mit Ihrem Modell zufrieden sind, können Sie die Unterklasse NSManagedObject erstellen.

Erstellen Sie NSManagedObjectSubclass

Datenmodell auswählen

Auswahl des zu verwaltenden Elements

  • Hier können wir zwei wichtige Dinge sehen. Erstens ist diese Person (identisch mit Ihrem Entitätsnamen) eine Unterklasse von NSManagedObject. Dies ist wichtig für Ihren Core Data Stack. Zweitens haben Sie zwei Dateien erstellt, eine Klasse Person.swift und eine Erweiterung von Person namens Person+CoreDataProperites.swift .

  • Alle Ergänzungen sollten in Person.swift werden. Wenn Sie Ihr Modell ändern und den Klassengenerator erneut ausführen, werden alle Person+CoreDataProperties.swift in Person+CoreDataProperties.swift überschrieben.

Personenwechsel

Person + CoreDataProperites.swift

Projekt erstellen

Als erstes müssen Sie ein neues Projekt erstellen: Datei> Neu> Projekt. Hier wird Single View Application ausgewählt, Sie können jedoch die für Ihr Projekt am besten geeignete auswählen.

Ersteinrichtung

Der nächste Schritt beim Einrichten der Kerndaten ist das Hinzufügen der Informationen zu Ihrem Projekt. Der wichtige Teil des Fotos unten ist die Auswahl von "Use Core Data".

Projektinformationen hinzufügen



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow