Каждый делает это более сложным и смелым, чем нужно ... Простое полное решение.
В ViewDidLoad:
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"FirstLoadKey"]) {
self.imageView.hidden = YES;
}else{
self.imageView.hidden = NO;
[[NSUserDefaults standardUserDefaults]setBool:YES forKey:@"FirstLoadKey"];
[[NSUserDefaults standardUserDefaults]synchronize];
}
Мне уже нравится ваша практика: после того, как вы дважды повторили код просмотра, реорганизуйте его до частичного. Тим прав в том, что вы можете ускорить его по мере необходимости после профилирования и после , что это было доказано.
Вот мое единственное предостережение: если вы работаете с профессиональными дизайнерами, которые занимаются представления, может быть проще в долгосрочной перспективе иметь довольно повторяющийся код представления. Некоторым людям трудно искать частичные вещи и «видеть», как все они подходят друг другу. Мне было проще с этими людьми позволить им управлять всем Shebang и обновлять более одного файла, если это необходимо. Оптимально? Не для нас, как программистов, но дизайнеры чаще привыкли видеть большую часть HTML в одном или трех файлах, а не в 20. :)
Запомните правила оптимизации !
Если после завершения вашего приложения ваши просмотры слишком медленные, используйте что-то вроде New Relic, чтобы узнать, где замедление происходит. Есть много мест, которые могут быть, но вряд ли это будет у вас.