Pytanie jest całkiem proste: kiedy tworzę nowy interfejs API lub klasę usług, czy powinienem utworzyć niestandardową klasę dla obiektów, które są przekazywane, czy też powinienem trzymać się modelu NSDictionary
, który po prostu przechowuje dane w formacie stylu klucz-wartość.NSDictionary vs. niestandardowy obiekt
Oczywiście są plusy i minusy, ale jak myślisz, gdzie jest próg używania jednego na drugim?
NSDictionary
:
+
Brak zależności
+
bardzo elastyczny
+
Powszechnie stosowane
+
Wbudowane wsparcie dla NSCoding
-
struktura nie określono -> Błędy czasu wykonania
Niestandardowy obiektu:
+
Struktura określona
+
Property stylu akcesorów: myObject.someProperty
-
może spowodować rel. duża liczba klas dla obiektów zagnieżdżonych
Aktualizuj: Wliczone uwagi od jbat100
To zależy od preferencji. Na przykład zawsze mam logikę warstwy biznesowej (BLL) i zwykle tworzę obiekty niestandardowe. – beryllium