core-data учебник
Начало работы с основными данными
Поиск…
замечания
Core Data - это основа в различных SDK OS от Apple, включая, но не ограничиваясь ими, iOS и OS X. Он имеет две основные роли: уровень модели и уровень сохранения. Слой модели используется для управления объектами модели и сохранения данных. Просто вы можете хранить и управлять данными в объектно-ориентированном интерфейсе. Первичные функции включают в себя фильтрацию, запрос, сортировку, сохранение данных и создание связей между данными. Другими предметами, представляющими интерес для проектов Core Data, являются NSPredicate, threading и другие.
Примером приложения Core Data может быть приложение Catalog для вашей локальной библиотеки. В приложении «Каталог» библиотекарь мог добавлять или удалять книги. Они также могут фильтровать книги по жанрам, сортировать книги по дате публикации или искать работу определенных авторов. Сущность «Книга» будет иметь различные атрибуты, такие как название, автор, дата публикации, isbn, номер вызова и т. Д. Основные данные, включая приведенный выше пример, также могут хранить данные, собранные с сервера.
Основные компоненты структуры включают:
- Модели данных (сущности, атрибуты и отношения)
- Core Data Stack (NSPsistentStoreCoordinator, NSManagedObjectModel, NSManagedObjectContext)
- NSFetchRequest
- NSFetchedResultsController
Источники:
Руководство по программированию
Примечания к выпуску основных данных 2016
CoreData & Concurrency
Важно помнить , что CoreData НЕ потокобезопасная, что означает , что , если это необходимо использовать, например, фон-нить работать на ManagedObjects, есть новые вещи , чтобы рассмотреть, как PrivateQueue- / MainQueue -ManagedObjectContexts.
Из документального документа «Яблоки»: Core Data рассчитывается работать в одном потоке. Вы никогда не должны делиться контекстами управляемых объектов между потоками. Это жесткое правило, которое вы не должны нарушать.
Создание вашей первой модели
- Выберите файл
.xcdatamodeld
. Вы заметите, что у вас нет сущностей. Вам придется создать его самостоятельно. В нижней части Xcode вы увидите кнопку, в которой говорится, что «Добавить объект» щелкните по ней, и у вас будет новый объект для работы с проектом.
- На этом этапе есть несколько моментов. Во-первых, вы изменили название своей сущности здесь, сущности присваивается имя
Person
. В разделе атрибутов вы добавляете атрибуты в свою модель. Эта кнопка представляет собой плюс, расположенный в нижней части раздела. Вы можете добавить любые атрибуты, относящиеся к вашему приложению. Например, если вы создаете приложение для контактов, вам не нужно, чтобы модель Person содержала атрибутArms
с типомBoolean
. Вы должны держать его связанным с вашим приложением. Например, добавлениеtelephone
атрибута с типом Integer или если вам нравится String. У вас есть несколько вариантов типов на выбор: отBooleans
доDates
и многое другое.
- После того, как вы удовлетворены своей моделью, вы можете создать подкласс NSManagedObject.
Здесь мы видим две важные вещи. Во-первых, это лицо (то же, что и имя вашего объекта) является подклассом NSManagedObject. Это важно для вашего Core Data Stack. Во-вторых, вы создали два файла, класс
Person.swift
и расширениеPerson
называемоеPerson+CoreDataProperites.swift
.Все добавления должны выполняться в
Person.swift
, так как если вы когда-либо измените свою модель и заново запустите генератор класса, она перезапишет все вPerson+CoreDataProperties.swift
.
Создание проекта
Первое действие - создать новый проект File> New> Project. Здесь выбрано приложение Single View, но вы можете выбрать тот, который наилучшим образом соответствует вашему проекту.
Следующим шагом в настройке основных данных является добавление информации в ваш проект. Важной частью на приведенной ниже фотографии является выбор «Использовать основные данные»,