In non-ARC code retained properties handily take care of memory management for you using the self.property = syntax, so we were taught to use them for practical
I don't think I've ever used properties simply because of memory management and I don't think you ever should. So to answer your question, no, there's no reason to use properties other than to access instance variables, which is essentially what they're supposed to be used for in the first place.