Ich nähere mich dem Ende der Entwicklung einer iPhone-Anwendung und frage mich, wie schlecht es ist, Autorelease bei der Entwicklung für das iPhone zu verwenden. Ich bin mit einigen ziemlich zufällige Abstürze konfrontiert und bisher kann ich es nicht auf etwas anderes als schlampige Speichernutzung zu lokalisieren.
Als Cocoa-Neuling erinnere ich mich, dass ich anfangs ein Leitliniendokument gelesen habe, in dem dringend empfohlen wurde, Autorelease zugunsten von manuellem Retain/Release für das iPhone zu vermeiden. Allerdings kam schon früh ein "erfahrener" Cocoa-Entwickler an Bord (der ironischerweise seitdem entlassen wurde), der überall Autorelease verwendete. Ich gebe zu, dass ich in den "Affe sieht Affe"-Modus übergegangen bin, und das scheint mich jetzt zu verfolgen (ich bin jetzt der einzige Entwickler in diesem Projekt).
Was ist also als nächstes zu tun? Es scheint mir, dass ich den Code verzweigen und versuchen, durchzugehen und zu ersetzen, wo möglich, Autorelease-Code halten meine Finger gedrückt, dass ich nicht versehentlich brechen die App. Es scheint, dass viele Bibliotheksaufrufe zu automatisch freigegebenen Objekten wie stringWithFormat und so ziemlich alles, was ich nicht selbst verwende, führen. Alle anderen gotchyas und / oder Vorschläge, die ich sollte für suchen? Danke Cocoa-Gurus.