2016-05-05 19 views
1

Ich habe eine grundlegende Frage. Während die Daten für meine Tabellenansicht in objective C genommen werden. Es gibt drei Diff-Felder Bild, Titel, Beschreibung. Also meine Frage ist, ob ich 3 diff NSArrays für sie machen oder einfach nur eine Klasse von drei Variablen erstellen und ein Array von Objekten für bessere Effizienz machen soll.Array von Objekten Vs verschiedenen Arrays

unter 3-Arrays:

NSArray *image = [NSArray withObjects : @"one.jpg",@"two.jpg",nil]; 
NSArray *title = [NSArray withObjects : @"one",@"two",nil]; 
NSArray *description = [NSArray withObjects : @"number one",@"number two",nil]; 

or 

User *dataOne = [User new] 
dataOne.image= @"one.jpg"; 
dataOne.title = @"one"; 
dataOne.description [email protected]"Number One"; 

User *dataTwo = [User new] 
dataTwo.image= @"one.jpg"; 
dataTwo.title = @"one"; 
dataTwo.description [email protected]"Number One"; 

NSArray *data = [NSArray dataOne,dataTwo, nil]; 

die bessere Lösung ist? Bitte erläutern Sie es deutlich. Danke

Antwort

5

Es gibt viele Vorteile von Datenmodell.

  • Beziehung
  • Datenaustausch
  • Datenintegrität
  • Einfachheit

ein kleines Beispiel Lets nehmen, wie Sie drei Arrays von Daten genommen haben, jetzt, wenn Sie einzelne Daten zu übergeben wollen ein anderer View-Controller oder einige andere, dann müssen Sie Daten aus jedem Array auswählen und übergeben. Im Fall des Datenmodells müssen Sie nur ein Objekt übergeben.

Noch eine Sache, angenommen, dass der Benutzer 20 bis 50 Eigenschaften in diesem Fall haben Sie müssen die gleiche Anzahl von Array dafür erstellen. ist es ein effizienter Weg?

+0

ja, das ist eine nette Erklärung. danke –

+0

willkommen @sharadchauhan hoffe es ist dir jetzt klar. – Mahesh

2

Zweite Option ist die beste. Sie organisieren alle Elemente in Strukturen und Code ist besser und klarer. Wenn Ihre Informationen zwischen ihnen verlinkt sind, besser.

Verwandte Themen