Вы действительно должны прочитать об управлении памятью в target-c
https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/MemoryMgmt/Articles/MemoryMgmt.html
Когда я впервые переключился на программирование в target-c (из C # / Java), у меня тоже было много проблем. Как только я понял управление памятью в target-c, у меня редко возникали подобные проблемы. Я не использую дугу.
Всякий раз, когда вы выделяете и инициируете объект, счет сохранения равен 1. Вы должны помнить, чтобы выпустить эти объекты в некоторый момент. Если вы используете другие методы, тогда вы получите объект автоматического выпуска. Это соглашение.
Время, которое вы сэкономите, действительно того стоит.