Лекция 12 целиком теоретическая и посвящена Core Data.
Начинается с создания Data Model для простейшей задачи с двумя сущностями: Photo и Photographer. Определяются их атрибуты и взаимосвязи. На основе визуальной карты базы данных создаются классы для ManagedObjects: Photo и Photographer, которые функционируют в контексте ManagedObjectsContext.
Задача получения текущего контекста ManagedObjectsContext решается не традиционным способом через шаблон Core Data ( при создании проекта поставить «галочку»), который выдает кучу кода в AppDelegate.swift, большая часть которого посвящена созданию стэка Core Data, а через UIManagedDocument, который берет на себя все проблемы с созданием стэка Core Data, в том числе ManagedObjectsContext, с безопасностью многопотоковой обработки и т.д. Кроме того, это самый короткий способ перехода к iCloud.
Рассматривается способ синхронизации множества контекстов ManagedObjectsContexts, указывающих на одну и ту же базу данных, через Notifications.
Создание subclasses ManagedObjects с помощью Xcode на основе визуальной карты базы данных и использование «точечной нотации» доступа к свойствам, а также наполнение этих subclasses пользовательскими (custom) методами через механизм «категорий» ( categories)
Вставка ManagedObjects, изменение атрибутов, удаление и запросы.
«Дескрипторы сортировки», «маленький язык» предикатов, составные предикаты, использование агрегатных функций KVC (Key Value Coding).
Выполнение запросов и результаты выборки. Faulting.
Русский неавторизованный конспект лекции 12, хронометрированный через каждые 5 минут, представлен в PDF — файлах.