core-data Samouczek
Rozpoczęcie pracy z podstawowymi danymi
Szukaj…
Uwagi
Core Data jest strukturą w różnych zestawach SD SD firmy Apple, w tym między innymi iOS i OS X. Ma dwie główne role: warstwę modelową i warstwę trwałości. Warstwa modelu służy do zarządzania obiektami modelu i utrwalania danych. Po prostu możesz przechowywać i zarządzać danymi w zorientowanym obiektowo interfejsie. Podstawowe funkcje obejmują filtrowanie, zapytania, sortowanie, utrwalanie danych i tworzenie relacji między danymi. Innymi przedmiotami zainteresowanymi projektami Core Data są NSPredicate, wątki i inne.
Przykładowa aplikacja Core Data może być aplikacją Catalog dla lokalnej biblioteki. W aplikacji Katalog bibliotekarz może dodawać lub usuwać książki. Mogą również filtrować książki według gatunku, sortować książki według daty publikacji lub wyszukiwać prace konkretnego autora. Jednostka „Książka” miałaby różne atrybuty, takie jak tytuł, autor, data publikacji, isbn, numer telefonu itp. Podstawowe dane, w tym powyższy przykład, mogą również przechowywać dane zebrane z serwera.
Główne elementy ram obejmują:
- Modele danych (encje, atrybuty i relacje)
- Podstawowy stos danych (NSPersistentStoreCoordinator, NSManagedObjectModel, NSManagedObjectContext)
- NSFetchRequest
- NSFetchedResultsController
Źródła:
CoreData i współbieżność
Ważne jest, aby pamiętać, że CoreData NIE jest bezpieczny dla wątków, co oznacza, że jeśli konieczne jest użycie na przykład wątku w tle do pracy na obiektach zarządzanych, należy rozważyć nowe rzeczy, takie jak PrivateQueue- / MainQueue -ManagedObjectContexts.
Z filmu dokumentalnego „Jabłka”: Core Data oczekuje na uruchomienie w jednym wątku. Nigdy nie należy współużytkować kontekstów obiektów zarządzanych między wątkami. To trudna zasada, której nie powinieneś łamać.
Tworzenie pierwszego modelu
- Wybierz plik
.xcdatamodeld
. Zauważysz, że nie masz podmiotów. Musisz sam go stworzyć. W dolnej części Xcode zobaczysz przycisk „Dodaj encję”, kliknij go, a będziesz miał nowy podmiot, z którym będziesz pracować nad projektem.
- W tym kroku jest kilka punktów do wspomnienia. Po pierwsze, zmieniłeś tutaj swoją nazwę bytu, który otrzymał imię
Person
. W sekcji atrybutów dodajesz atrybuty do swojego modelu. Ten przycisk jest plusem znajdującym się na dole sekcji. Możesz dodać dowolne atrybuty, które są istotne dla Twojej aplikacji. Na przykład, jeśli tworzysz aplikację książki adresowej, nie musisz tworzyć modelu osoby, który ma atrybutArms
typuBoolean
. Powinieneś zachować to związane z aplikacją. Na przykład dodanie atrybututelephone
typu Integer lub jeśli lubisz String. Masz kilka opcji do wyboru, odBooleans
doDates
i nie tylko.
- Gdy jesteś zadowolony ze swojego modelu, możesz utworzyć podklasę NSManagedObject.
Tutaj widzimy dwie ważne rzeczy. Po pierwsze, ta osoba (taka sama jak nazwa twojej jednostki) jest podklasą NSManagedObject. Jest to ważne dla stosu danych podstawowych. Po drugie, utworzyłeś dwa pliki, klasę
Person.swift
i rozszerzeniePerson
nazwiePerson+CoreDataProperites.swift
.Wszystkie dodania należy wykonać w
Person.swift
, ponieważ jeśli kiedykolwiek zmienisz model i ponownie uruchomisz generator klas, zastąpi on wszystko wPerson+CoreDataProperties.swift
.
Tworzenie projektu
Pierwszym działaniem, które należy podjąć, jest utworzenie nowego projektu Plik> Nowy> Projekt. Tutaj wybierana jest aplikacja widoku pojedynczego, ale możesz wybrać tę, która najlepiej pasuje do twojego projektu.
Kolejnym krokiem w konfiguracji podstawowych danych jest dodanie informacji do projektu. Ważną częścią na poniższym zdjęciu jest wybranie „Użyj podstawowych danych”