core-data Tutorial
Empezando con los datos básicos
Buscar..
Observaciones
Core Data es un marco en varios SDK de SO de Apple, que incluye, entre otros, iOS y OS X. Tiene dos funciones principales: una capa de modelo y una capa de persistencia. La capa de modelo se utiliza en la gestión de objetos de modelo y datos persistentes. Simplemente puede almacenar y administrar datos en una interfaz orientada a objetos. Las características principales incluyen el filtrado, la consulta, la clasificación, la persistencia de datos y la creación de relaciones entre los datos. Otros temas de interés para los proyectos Core Data son NSPredicate, threading, y entre otros.
Una aplicación de ejemplo de Core Data podría ser una aplicación de catálogo para su biblioteca local. En la aplicación Catálogo, un bibliotecario podría agregar o eliminar libros. También podrían filtrar libros por género, ordenar libros por fecha de publicación o buscar un trabajo específico de autores. Un "Libro" de la entidad tendría varios atributos, como título, autor, fecha de publicación, isbn, número de llamada, etc. Los Datos básicos, incluido el ejemplo anterior, también pueden almacenar datos recopilados de un servidor.
Los componentes principales del marco incluyen:
- Modelos de datos (entidades, atributos y relaciones)
- Core Data Stack (NSPersistentStoreCoordinator, NSManagedObjectModel, NSManagedObjectContext)
- NSFetchRequest
- NSFetchedResultsController
Fuentes:
Notas de lanzamiento de datos básicos 2016
CoreData y Concurrencia
Es importante recordar que CoreData NO es seguro para subprocesos, lo que significa que si es necesario usar, por ejemplo, un subproceso de fondo para trabajar en ManagedObjects, hay cosas nuevas que se deben considerar, como PrivateQueue- / MainQueue -ManagedObjectContexts.
Desde el documental de Apple: Core Data espera ser ejecutado en un solo hilo. Nunca debes compartir contextos de objetos gestionados entre hilos. Esta es una regla difícil que no debes romper.
Creando tu primer modelo
- Seleccione el archivo
.xcdatamodeld
. Notarás que no tienes entidades. Tendrás que crear uno tú mismo. En la parte inferior de Xcode notará que un botón que dice "Agregar entidad" hace clic en él y tendrá una nueva entidad con la que podrá trabajar en el proyecto.
- En este paso hay algunos puntos a mencionar. Primero es que cambió el nombre de su entidad aquí, a la entidad se le da el nombre de
Person
. Debajo de la sección de atributos usted agrega los atributos a su modelo. Este botón es un signo más ubicado en la parte inferior de la sección. Puede agregar cualquier atributo que sea relevante para su aplicación. Por ejemplo, si está creando una aplicación de libro de contactos, no necesita hacer que el modelo de una Persona contenga un atributo deArms
con el tipoBoolean
. Debe mantenerlo relacionado con su aplicación. Por ejemplo, agregando un atributo detelephone
con el tipo Integer o si te gusta String. Tiene varias opciones de tipos para elegir, desdeBooleans
aDates
y más.
- Una vez que esté satisfecho con su modelo, puede crear la subclase NSManagedObject.
Aquí podemos ver dos cosas importantes. Primero, esa Persona (igual que el nombre de su entidad) es una subclase de NSManagedObject. Esto es importante para su pila de datos básicos. Segundo, ha creado dos archivos, una clase
Person.swift
y una extensión dePerson
llamadaPerson+CoreDataProperites.swift
.Todas las adiciones deben hacerse en
Person.swift
, ya que si alguna vez cambia su modelo y vuelve a ejecutar el generador de clases, se sobrescribirá todo enPerson+CoreDataProperties.swift
.
Creando el proyecto
La primera acción a realizar es crear un nuevo proyecto Archivo> Nuevo> Proyecto. Aquí se selecciona la aplicación Vista única, pero puede elegir la que mejor se adapte a su proyecto.
El siguiente paso en la configuración de los datos básicos es agregar la información a su proyecto. La parte importante en la foto a continuación es seleccionar "Usar datos básicos"