RUVIDEO
Поделитесь видео 🙏

Core Data Tutorial #4: Daten per NSFetchRequest lesen

Lern jetzt Core Data umfassend und im Detail kennen: http://codingtutor.de/videotraining/core-data-im-detail/?coupon=coredata - für kurze Zeit nur 7€.

Daten per NSFetchRequest aus Core Data lesen ist nun der nächste Schritt auf dem Weg zu einer Core Data Anwendung. Diese Requests werden vorbereitet und über den jeweiligen Managed Context (NSManagedObjectContext) ausgeführt. Das Ergebnis ist im einfachsten Fall eine Liste mit Managed Objects - je gefundenem Datensatz eine eigene Instanz.

Die AppDelegate Anpassungen für Core Data

Die Xcode Vorlage generiert den Code für Core Data in erster Linie in der AppDelegate Klasse. Dort werden verschiedene Eigenschaften angelegt. Eine davon ist z.B. das applicationDocumentsDirectory. Darin wird die Datenbankdatei (per Default SQLite unter iOS) hinterlegt. Darüber hinaus werden auch die anderen Bestandteile vom Core Data Stack, den Du im ersten Video kennengelernt hast, erzeugt.

In der AppDelegate Klasse wird zunächst das Data Model erzeugt. Das basiert auf der .xcdatamodeld-Datei, in der die Entitäten und Beziehungen erzeugt werden. Diese Datei wird übersetzt und steht als .momd Datei zur Verfügung.

Mit dem Managed Object Model kann schließlich der Persistent Store Coordinator (NSPersistentStoreCoordinator) erzeugt werden. Gleichzeitig wird nun der Pfad zur Datenbankdatei (.sqlite) erzeugt. Dazu wird die Eigenschaft applicationDocumentsDirectory verwendet und der Dateiname angehangen. Schließlich wird zum Persistent Store Coordinator der Persistent Store hinzugefügt. Das ist bei einem automatisch generierten iOS-Projekt der NSSQLiteStoreType.

Diese Stelle spielt später noch eine Rolle, denn automatisch werden dem SQLiteStore keiner Optionen übergeben. Wenn Du Migrationen durchführen möchtest, egal ob automatisch oder manuell, muss das hier festgelegt werden. Auch die Synchronisation mit der iCloud wird hierüber gesteuert.

Daten per NSFetchRequest abrufen

Der Abruf von Daten erfolgt über einen sogenannten FetchRequest (NSFetchRequest). Der wird benötigt um die Parameter der Abfrage festzulegen. Welche Entität wird abgerufen? Werden möglicherweise Filter angewandt (NSPredicate)? Ist eine bestimmte Reihenfolge bzw. Sortierung gewünscht (NSSortDescriptor)? All solche Details werden in der Instanz der Klasse NSFetchRequest festgelegt.

Der Request wird schließlich an den Managed Object Context übergeben. Dazu wird die Methode executeFetchRequest aufgerufen. Das Ergebnis dieser Methode (der Rückgabewert) ist ein Array - in diesem Fall mit Objekten vom Typ “Liste”. Jedes dieser Objekte ist ein eigenes Managed Object, das jeweils einen Datensatz repräsentiert.

Die Methode executeFetchRequest wirft möglicherweise einen Fehler. Der muss also per do/try/catch abgefangen und behandelt werden. Außerdem müssen die abgerufenen Daten natürlich noch für die UITableView aufbereitet werden. Mehr dazu findest du im Video.

Core Data Tutorial:
#1 - Einführung in CoreData: https://youtu.be/kHXLim-2KE0
#2 - Neues Projekt mit CoreData erzeugen: https://youtu.be/Drfd-HliOdw
#3 - Die Entitäten modellieren & Managed Objects generieren: https://youtu.be/xg7sJtAsljc
#4 - Daten aus Core Data Datenbanken lesen: https://youtu.be/xArKh8CEzww
#5 - Daten in Core Data Datenbanken einfügen: https://youtu.be/Eh1TjyzzMlw
#6 - Core Data Einträge entfernen: https://youtu.be/uDOYLDNR080
#7 - Core Data im Detail: Übungsaufgabe: https://youtu.be/G08-CaEfgLM
#8 - ?


Mehr Informationen:
- Codingtutor Akademie: http://codingtutor.de
- bei Facebook: http://facebook.com/programmierenlernen.info
- bei Twitter: http://twitter.com/AspiringCoders

Что делает видео по-настоящему запоминающимся? Наверное, та самая атмосфера, которая заставляет забыть о времени. Когда вы заходите на RUVIDEO, чтобы посмотреть онлайн «Core Data Tutorial #4: Daten per NSFetchRequest lesen», вы рассчитываете на нечто большее, чем просто загрузку плеера. И мы это понимаем. Контент такого уровня заслуживает того, чтобы его смотрели в HD 1080, без дрожания картинки и бесконечного буферизации.

Честно говоря, Rutube сегодня — это кладезь уникальных находок, которые часто теряются в общем шуме. Мы же вытаскиваем на поверхность самое интересное. Будь то динамичный экшн, глубокий разбор темы от любимого автора или просто уютное видео для настроения — всё это доступно здесь бесплатно и без лишних формальностей. Никаких «заполните анкету, чтобы продолжить». Только вы, ваш экран и качественный поток.

Если вас зацепило это видео, не забудьте взглянуть на похожие материалы в блоке справа. Мы откалибровали наши алгоритмы так, чтобы они подбирали контент не просто «по тегам», а по настроению и смыслу. Ведь в конечном итоге, онлайн-кинотеатр — это не склад файлов, а место, где каждый вечер можно найти свою историю. Приятного вам отдыха на RUVIDEO!

Видео взято из открытых источников Rutube. Если вы правообладатель, обратитесь к первоисточнику.