iOS6 viewDidUnload устарело
Возможно, это плохая практика, но из документации, которую я прочитал, я получил совет инициализировать объекты в некоторых случаях внутри метода viewDidLoad и обнулять его в viewDidUnload.
Например, если у вас есть что-то вроде добавления Обозревателя
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(filterready:)
name:@"filterReady"
object:nil];
Теперь у меня нет метода удаления Observer, однако viewDidLoad вызывается каждый раз, когда отображается представление, в результате чего через некоторое время запускается несколько наблюдателей, а затем селектор вызывается несколько раз.
Я могу исправить это, переместив некоторые очистители в метод viewDidDisappear, но теперь у меня есть некоторые сомнения, правильно ли я поступаю.
В моем примере у меня есть несколько контроллеров навигации, которые управляют своими поднавигациями, но для них никогда не вызывается dealloc, даже если на них нет ссылок