Более длинные ключи сделают файл NSKeyedArchiver значительно длиннее
-
22-07-2019 - |
Вопрос
Когда я заполню encodeWithCoder:
для целевых классов c для приложения iPhone, будет ли он увеличивать размер файла архива, если я буду использовать длинные ключи, а не короткие ключи для всех моих переменных? р>
Например, если я использую очень длинные ключи, как это:
[coder encodeBool:myBoolean forKey:@"My_Excesively_Long_Boolean_Key"];
сделает файл архива длиннее, чем если бы я использовал такие вещи:
[coder encodeBool:myBoolean forKey:@"Key01"];
Предполагая, что у меня есть большое количество целых и BOOL.
Решение
Если у вас нет сотен тысяч ключей, вы не увидите заметного увеличения размера. В современных системах текст тривиален. Вы можете хранить десятки тысяч ключей в паре мег. Р>
Использование длинных уникальных ключей, констант, имен классов, ivars и т. д. активно поощряется благодаря открытому пространству имен Objective-C. Р>
Другие советы
Чем больше размер архива, тем больше времени требуется для его восстановления в структуре данных. Размер вашего архива слишком мал по сравнению с объемом флэш-памяти, доступным в наши дни (в 2011 году).