Ricerca…


Osservazioni

Core Data è un framework nei vari OS SD di Apple, inclusi, ma non limitati a iOS e OS X. Ha due ruoli principali: un livello di modello e uno di persistenza. Il livello del modello viene utilizzato nella gestione degli oggetti del modello e dei dati persistenti. Semplicemente è possibile memorizzare e gestire i dati in un'interfaccia orientata agli oggetti. Le funzionalità primarie includono il filtraggio, l'esecuzione di query, l'ordinamento, la persistenza dei dati e la creazione di relazioni tra i dati. Altri argomenti di interesse per i progetti di Core Data sono NSPredicate, threading e, tra gli altri.

Un'applicazione di esempio di Core Data potrebbe un'applicazione di catalogo per la tua libreria locale. Nell'app Catalogo un bibliotecario può aggiungere o rimuovere libri. Potrebbero anche filtrare i libri per genere, ordinare i libri per data di pubblicazione o cercare un lavoro specifico per gli autori. Un'entità "Libro" avrebbe vari attributi come titolo, autore, data di pubblicazione, isbn, numero di chiamata, ecc. I dati fondamentali incluso l'esempio sopra possono anche memorizzare i dati raccolti da un server.

I componenti principali del framework includono:

  • Modelli di dati (entità, attributi e relazioni)
  • Stack di dati principali (NSPersistentStoreCoordinator, NSManagedObjectModel, NSManagedObjectContext)
  • NSFetchRequest
  • NSFetchedResultsController

fonti:

Documentazione quadro

Guida alla programmazione

Note di rilascio dei dati fondamentali 2016

CoreData e concorrenza

È importante ricordare che CoreData NON è thread-safe, il che significa che se è necessario utilizzare ad esempio un thread in background per lavorare su ManagedObjects, ci sono cose nuove da considerare, come PrivateQueue- / MainQueue -ManagedObjectContexts.

Dal documentario di Apple: Core Data si aspetta di essere eseguito su un singolo thread. Non condividere mai contesti di oggetti gestiti tra thread. Questa è una regola difficile da non interrompere.

Creare il tuo primo modello

  • Seleziona il file .xcdatamodeld . Noterai che non hai entità. Dovrai crearne uno tu stesso. In fondo a Xcode noterai un pulsante che dice "Aggiungi entità" cliccalo e avrai una nuova entità con cui lavorare sul progetto.

Modello di dati

  • In questo passaggio ci sono alcuni punti da menzionare. Innanzitutto, hai cambiato il nome dell'entità qui all'entità viene assegnato il nome Person . Sotto la sezione attributi, aggiungi gli attributi al tuo modello. Questo pulsante è un vantaggio situato nella parte inferiore della sezione. Puoi aggiungere qualsiasi attributo pertinente alla tua app. Ad esempio, se stai creando un'app di rubrica, non è necessario che il modello di una Persona contenga un attributo di Arms con tipo Boolean . Dovresti tenerlo correlato alla tua app. Ad esempio aggiungendo un attributo telephone con tipo Integer o se ti piace String. Hai diverse opzioni di tipi tra cui scegliere che vanno da Booleans a Dates e altro ancora.

Creare il tuo modello

  • Dopo aver soddisfatto il modello, è possibile creare la sottoclasse NSManagedObject.

Crea NSManagedObjectSubclass

Selezione del modello di dati

Selezione entità da gestire

  • Qui possiamo vedere due cose importanti. Primo, quella Persona (uguale al nome della tua entità) è una sottoclasse di NSManagedObject. Questo è importante per il tuo stack di dati core. In secondo luogo, hai creato due file, una classe Person.swift e un'estensione di Person chiamata Person+CoreDataProperites.swift .

  • Tutte le aggiunte dovrebbero essere fatte in Person.swift , dal momento che se cambi mai il tuo modello e riesegui il generatore di classi, sovrascriverà tutto in Person+CoreDataProperties.swift .

Person.swift

Persona + CoreDataProperites.swift

Creare il progetto

La prima azione da intraprendere è la creazione di un nuovo progetto File> Nuovo> Progetto. Qui è selezionata l'applicazione Single View, ma puoi scegliere quella che si adatta al tuo progetto.

Configurazione iniziale

Il prossimo passo nella configurazione dei dati di base è aggiungere le informazioni al progetto. La parte importante nella foto qui sotto è selezionare "Utilizza i dati principali"

Aggiunta di informazioni sul progetto



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow