Es gibt definitiv einige Overhead in der Generierung von Objekten. Für eine kleine Anzahl von Objekten ist die Verwendung von ObjC-Datenstrukturen immer noch geeignet. Wenn Sie eine große Anzahl von Tupeln haben, würde ich sie in einem C-Array von Strukturen verwalten. Denken Sie daran, dass Objective-C wirklich nur C ist. Es ist angemessen und üblich, C-Konstrukte in Objective-C zu verwenden (bis zu einem Punkt; zu lernen, wo dieser Punkt liegt, ist ein wichtiger Meilenstein, um ein guter Objective-C-Entwickler zu werden).
Normalerweise würde ich für diese Art von Datenstruktur wahrscheinlich ein einzelnes Objective-C-Objekt erstellen, das die gesamte Sammlung verwaltet. So würden externe Anrufer eine Objective-C-Schnittstelle sehen, aber die internen Daten würden in einer effizienteren C-Struktur gespeichert werden.
Wenn es üblich ist, schnell auf viele Tupel zuzugreifen, würde mein Sammlungsobjekt wahrscheinlich ähnliche Methoden wie "[NSArray getObjects:range:]
" bereitstellen. ObjC-Methoden, die mit "get" beginnen, zeigen an, dass der erste Parameter ein Zeiger ist, der von der Methode überschrieben wird. Dies wird üblicherweise für den C-ähnlichen Hochleistungszugriff auf Objekte verwendet, die von einem ObjC-Objekt verwaltet werden.
Diese Art der Datenstruktur ist genau die Art und Weise ObjC Entwickler die Eleganz und Wartbarkeit von ObjC mit der Leistung und Einfachheit von C. verschmelzen
Warum würden Sie eine Datenbank verwenden Tupel haben? – George