As a fairly new objective-c programmer (with a 4 years Java experience), I seem to be having a hard time understanding when to use class extensions. From what I understood (
Hope subclass-category-and-extensions may be helpful for you.