Должен ли я использовать буквальный синтаксис или конструкторы для создания словарей и массивов?
Я читаю Руководство по разработке для iOS, чтобы ознакомиться с языком Objective-C, и в настоящее время у меня возникла небольшая путаница в теме литералов контейнера и нотации нижнего индекса, поскольку она касается создания таких объектов, какNSDictionary
.
Я понимаю, что есть несколько способов созданияNSDictionary
объекты, включая кодирование значения ключа (dictionaryWithObjects:forKeys:
а такжеdictionaryWithObjectsAndKeys:
или их соответствующие инициализаторы).Ссылка на источник.
Насколько я понимаю, есть два основных способа сделать это, а затем естьanother Способ, который использует контейнерные литералы, продемонстрирован здесь:
NSDictionary *myDictionary = @{
@"name" : NSUserName(),
@"date" : [NSDate date],
@"processInfo" : [NSProcessInfo processInfo]
};
Какой лучший способ использовать? Есть ли какая-то польза от использования метода Container Literal по сравнению с предыдущими двумя или это просто удобство для программистов?
У меня сложилось впечатление, что это еще один простой способ кодирования таких вещей, как массивы. Это правда или я что-то упускаю здесь? Являются ли эти методы просто вопросом личных предпочтений?