Meine erste App... Relationen zu Objekten. Wie macht man das?

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

  • Meine erste App... Relationen zu Objekten. Wie macht man das?

    Hallo,

    nun gehe ich an meine erste App ran. Für IOS und in Swift. Habe Programmiererfahrung in VBA. Habe Funktionen für Excel und Access geschrieben und mich nun die letzten Monate durch etwas Spielerei in Xcode und Tutorials für Objective-C bewegt.

    Es geht nun einfach um folgendes... Der Start, wie ich es mache fällt mir warum auch immer schwer.

    Habe mir die Oberfläche erstellt und möchte nun diese mit Klassen verbinden. Es geht um folgendes. Foto machen, zu einer Person zu fügen. Auch das Datum ist wichtig. Will sehen, wie viele Leute an einem Tag an einem Ereignis waren.

    Das werden keine tausende Leute sein. Dachte mir, das alles in Arrays und Dictionaries zu legen. Bloss... wie die Relationen machen? In Access hätte ich das mit Tabellen und Relationen einfach abbilden können. Wie mache ich das mit händisch programmieren? Habe ja keinen Primär Schlüssel, wo ich z.B. meine Bilder zu Personen zuweisen kann.

    Ich weiss, sind totale Anfänger Fragen. Vielleicht gib mir jemand trotzdem einen Tipp wie ich das machen kann.

    Core Data etc. erst später. Da habe ich noch zu viel Respekt vor. Will das alles mit der Archivierungsfunktion von Cocoa machen.

    Gruss

    Martin
  • Die Archivierungsfunktionen von Cocoa machen das genau so wie Core Data.
    Naja, fast. Egal.

    Du hast einen Objektgraphen. Sonst nix.
    Beim Serialisieren hast Du einen serialisierten Objektgraphen in einer binären Propertylist. Beim Deserialisieren hast Du einen Objektgraphen.

    Du hast also die ganze Zeit über Objektgraphen.

    Jedes Objekt in Deinem Array und Deinem Dictionary ist eine Referenz.
    Jede Property in Deinen Objekten ist eine Referenz.
    Relationen in dem Sinne brauchst Du also gar nicht. Du musst nur referenzieren.

    Deine Person hat eine Property 'image'? Gut, setz das Bild und die Person referenziert das Bild. Ohne irgendwelche Keys.
    Du willst wissen, welche Person zu dem Bild gehört? Wird nix, ist ja nur ein Bild.
    Baust Du ein Objekt 'Galeriebild' draus, gibst im ein Array 'markiertePersonen' und hast Referenzen auf die Personen drauf, wirfst dann an Stelle des Bildes das Objekt 'Galeriebild' in die Property 'image' und fügst dann self zu image.markiertePersonen hinzu, dann hast Du auch das gelöst.

    Entity-Relationship-Diagramme funktionieren auch mit Objektgraphen, Du musst halt nur die Referenzen abbilden statt in komische IDs umzudenken.

    Und wenn Du das alles geschafft hast wirst Du vermutlich Core Data auch korrekt benutzen. :P
    «Applejack» "Don't you use your fancy mathematics to muddle the issue!"

    Iä-86! Iä-64! Awavauatsh fthagn!

    kmr schrieb:

    Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P
  • Marco Feltmann schrieb:

    Die Archivierungsfunktionen von Cocoa machen das genau so wie Core Data.
    Naja, fast. Egal.

    Du hast einen Objektgraphen. Sonst nix.
    Beim Serialisieren hast Du einen serialisierten Objektgraphen in einer binären Propertylist. Beim Deserialisieren hast Du einen Objektgraphen.

    Du hast also die ganze Zeit über Objektgraphen.

    Jedes Objekt in Deinem Array und Deinem Dictionary ist eine Referenz.
    Jede Property in Deinen Objekten ist eine Referenz.
    Relationen in dem Sinne brauchst Du also gar nicht. Du musst nur referenzieren.

    Deine Person hat eine Property 'image'? Gut, setz das Bild und die Person referenziert das Bild. Ohne irgendwelche Keys.
    Du willst wissen, welche Person zu dem Bild gehört? Wird nix, ist ja nur ein Bild.
    Baust Du ein Objekt 'Galeriebild' draus, gibst im ein Array 'markiertePersonen' und hast Referenzen auf die Personen drauf, wirfst dann an Stelle des Bildes das Objekt 'Galeriebild' in die Property 'image' und fügst dann self zu image.markiertePersonen hinzu, dann hast Du auch das gelöst.

    Entity-Relationship-Diagramme funktionieren auch mit Objektgraphen, Du musst halt nur die Referenzen abbilden statt in komische IDs umzudenken.

    Und wenn Du das alles geschafft hast wirst Du vermutlich Core Data auch korrekt benutzen. :P


    Vielen Dank für die Ausführliche Hilfe. Da muss ich jetzt halt durch. :)