Я пытаюсь создать «защищенный от сбоев» NSDictionary, поскольку я использую сериализатор JSON, который преобразует ответ сервера в NSDictionary. Как результат, иногда ключа для словаря нет. В настоящее время это приведет к сбою приложения, однако я бы предпочел вернуть пустую строку NSString, чтобы я мог отобразить это в интерфейсе.
Решением может быть то, что я проверяю ключ каждый раз, когда получаю доступ к словарю, например,
if([returnedDictionary objectForKey:@"key"]){
// Display [returnedDictionary objectForKey:@"key"];
}else{
// Display @"";
}
Однако вскоре это приведет к раздутому, трудно читаемому коду.
Я думал о создании пользовательского объекта NSDictionary, что-то вроде:
@interface NSSafeDictionary : NSDictionary .....
, который переопределяет objectForKey приведенным выше оператором.
Это удовлетворительный подход?
Спасибо