I would like to understand garbage collection in objective-c.
I know how to work with memory in C-like languages and in languages where I don't care about memory. But I don't understand when to use autorelease, retain, dealloc and everything else, so I get errors and memory leaks.
Could someone propose me a good tutorial to understand this all?