Ich entwickle eine iOS App mit Swift (noch neu zu swift).Swift: Ich möchte eine Liste von Ländern mit vielen Attributen aus einer CSV-Datei lesen und diese für meine App verwenden. Wie kann ich das umsetzen?
Ich habe eine Datenbank als CSV-Datei gespeichert und das ist in erster Linie der Kern der App. Die Datenbank enthält eine Tabelle, die in eine Liste aller Länder (Zeilen) mit jeweils vielen Attributen/Deskriptoren (den Spalten) unterteilt ist. Wirklich gibt es keine Beziehung zwischen den Ländern.
Ich möchte diese Informationen für das (ausgewählte) Land in meiner App anzeigen können. Genauso wie andere Dinge wie Suchen/Filtern/Sortieren basierend auf dem ausgewählten Attribut/der ausgewählten Eigenschaft.
Die Datenbank könnte in der Zukunft mit der Veröffentlichung von App-Updates aktualisiert werden, aber anders als ich denke, ich möchte es einmal aus der CSV-Datei gelesen werden und dann verwendet die App diese Daten.
Bin ich der Meinung, dass der beste Weg, dies zu implementieren, die Verwendung von Core Data mit ONE Entity (Land) mit den verschiedenen Attributen ist? Also muss ich nur einmal die CSV-Datei lesen und alle Daten persistent speichern und von dort aus verwenden.
Oder ist Core Data nicht die beste Implementierung? Soll ich einfach ein Klassenland mit den vielen Attributen erstellen und das verwenden? Aber das heißt dann, dass die App die CSV jedes Mal lesen muss, wenn sie geöffnet wird und die Daten in Arrays usw. speichert, wenn ich filtern oder sortieren möchte?
Also ich denke, zusammenfassend meine Fragen sind: 1. Verwenden Sie Core Data oder nicht? Wenn nicht, was ist Ihrer Meinung nach die beste Umsetzung? 2. Wenn ich Core Data verwende, erstelle ich nur EINE Entität (also keine Beziehungen usw.).
Ich denke, es gibt keine "richtige" oder "falsche" Antwort darauf. Sie können CoreData sicher verwenden (und kostenlos eine Menge Funktionen wie synchronisierte 'UITableView's usw.) bekommen. Wenn Sie sich entscheiden, damit zu gehen, [ist hier] (https://www.objc.io/issues/4-core-data/importing-large-data-sets-into-core-data/) ein ausgezeichneter Artikel von objc.io auf Datensatz importieren – Alladinian
Vielen Dank für Ihre Antwort.Würdest du sagen, dass meine Datenbank dann EINE Entität enthalten würde, die das Land ist und alles andere als Attribute für die Entität Land gilt? –