Это большая проблема с привязками Какао, она скрывает множество очень простых вещей.
dealloc вызывается, когда счет сохранения достигает 0. Для контроллера представления, который произойдет, когда другие контроллеры выпустили его, и у него нет других сохранений. Вам не стоит беспокоиться об этом, если вы делаете управление памятью в соответствии с правилами.
Создайте свойство для вашего объекта модели или контроллера модели, если вы хотите перейти на этот уровень абстракции. Правильно используя свойство (как всегда используя self.model
для получения назначений), освободите объект в вашей реализации dealloc и установите для него значение nil в viewWillUnload
. Свойства создают средства доступа для вас.
Что касается выпуска вашей модели, когда в ней нет необходимости, то вышеописанное поможет вам - вам не нужно ее обдумывать. Если вы создаете массивные структуры данных, то вы можете рассмотреть возможность их создания в viewWillAppear
и разделения на viewWillDisappear
в дополнение к вышеприведенному.
Вам понадобится больше розеток и клеевого кода, чем с привязками; но вам придется писать намного меньше кода для управления своими привязками. Помните, что iPhone должен быть менее мощным устройством, а вы должны заботиться о ресурсах - и API UIViewController
дает вам возможность сделать это.