Это зависит от того, как часто вы хотите использовать парсер. Если вы анализируете данные только раз в минуту, нет необходимости хранить анализатор в объекте.
Если вы анализируете данные 10 раз в секунду, вам нужно выделить один раз и сохранить анализатор.
Как сказал другой автор (который удалил свой ответ, потому что это не вопрос .net), я провел небольшой тест производительности, чтобы показать, что alloc - это действительно медленная операция.
for (NSTimeInterval i = 0; i < 1000; i++) {
self.label1.text = [dateFormatter stringFromDate:[NSDate dateWithTimeIntervalSinceNow:i]];
}
против
for (NSTimeInterval i = 0; i < 1000; i++) {
NSDateFormatter *localDateFormatter = [[NSDateFormatter alloc] init];
self.label2.text = [localDateFormatter stringFromDate:[NSDate dateWithTimeIntervalSinceNow:i]];
[localDateFormatter release];
}
дал результат 0,0017 секунды для первой версии и 0,28 секунды для второй версии. Вы поймете идею. Да, NSDateFormatter может быть одним из более сложных примеров объекта.
Если вы хотите использовать объект, такой как синтаксический анализатор или форматирование даты, я бы его где-нибудь сохранил.