Cocoa-App Document based, Core Data - großes Fragezeichen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Cocoa-App Document based, Core Data - großes Fragezeichen

    Hallo liebe Community,

    Nachdem ich nun mein erstes Projekt angefangen hab zu entwickeln und die ersten Fehler gemacht hab - denn nur so lernt man ;) - will ich die App intern in großen Teilen neu aufziehen. (Zur Info: hab seit 20 Jahren mit Programmierung zu tun, davon 8 Jahre Hauptberuflich, und kenne die verschiedensten Sprachen und APIs. Lediglich Cocoa ist relativ neu für mich, aber schön wenn man Neues entdecken und lernen kann :)). Bisher war es eine Single-Window App mit einer kleinen sqlite Datenbank. Ist eine kleine Datenverwaltung. Nun soll das ganze von einer Single-Window-App in eine Document-Based App geändert werden. Außerdem würde ich auf lange Frist gerne Spotlight implementieren. Der langen Rede kurzer Sinn, folgende Fragen kommen mir auf:

    • Kann ich meine Single-Window-App in eine Document-Based App "konvertieren" bzw. das nachträglich implementieren? Oder ist der Aufwand so groß dass ein Anlegen eines neuen Projektes und das Integrieren der wieder verwendbaren Sourcen sauberer und einfacher ist?

    • Ich weiß sehr wohl, das CoreData keine rationale Datenbank ist. Ist es aber möglich und macht Sinn die Datenbestände aus meiner sqlite Datenbank per SQL Abfrage auszulesen und die Ergebnisse in CoreData-Objekte einzufplegen? Das würde freilich bedeuten, Änderungen von den CoreData-Objekten entgegen zu nehmen und per SQL Befehl wieder in die Datenbank zu übernehmen. Oder "vergewaltige" ich dabei CoreData? Erhoffe mir durch CoreData Unterstützung bei Funktionen wie Undo / Redo.

    • Ich hab mir mal zum Testen ein neues Projekt Document-Based in Xcode angelegt. Und ich hab überall rum gesucht, aber eines Antwort nicht gefunden. Woher bitte schön weiß denn Xcode, dass meine NSDocument Klasse diejenige ist, die verwendet werden soll? Ich hab nichts gefunden wo diese Klasse initiiert, aufgerufen oder anderweitig verwendet wird. Es läuft, klar. Aber damit gebe ich mich nicht zufrieden, denn ich würde gerne verstehen wie und warum es läuft.

    Danke schonmal.

    Gruß Marc