Правильное свойство JSONModel для iOS

Если данные

{ "id": "10", "country": "Germany", "dialCode": 49, "isInEurope": true }

кто-то использует

@interface CountryModel : JSONModel
@property (assign, nonatomic) int id;
@property (strong, nonatomic) NSString* country;
@property (strong, nonatomic) NSString* dialCode;
@property (assign, nonatomic) BOOL isInEurope;
@end

другое использование

@interface CountryModel : JSONModel
@property (nonatomic) int id;
@property (nonatomic) NSString* country;
@property (nonatomic) NSString* dialCode;
@property (nonatomic) BOOL isInEurope;
@end

Что лучше использовать?

1 ответ

Решение

Оба метода верны. Объявление свойств зависит от вашего требования. Свойства используются для объявления методов доступа класса. Как класс может получить доступ к данным модели. При объявлении свойства вы можете при желании предоставить набор атрибутов свойства, которые определяют семантику хранения и другое поведение свойства. Когда мы определяем свойство объекта как weak/strong мы определяем его доступность для класса.

Это зависит от того, как вам нужен доступ к данным. Если вы хотите, чтобы ваш объект был потокобезопасным, вы можете определить как nonatomic, Определив это как strong/ assign он определяет, что вы являетесь владельцем объекта. И, определяя его как слабый, вы не владеете своим объектом. Проверьте эту ссылку для получения дополнительной информации.

Надеюсь, поможет. Удачного кодирования!

Другие вопросы по тегам