My 2 Cents:
When you create a new class using the Xcode templates, it usually provides a class extension in the implementation file for private properties. It makes a lot of sense to actually link the IBOutlets
and IBActions
there, because in most cases they are only ever used within the class itself.
The only exception to this that crosses my mind right now is UIView
subclasses, and especially UITableViewCell
. A lot of developers access the IBOutlets
directly in cellForRowAtIndexPath:
.
Apple engineers' message:
Encapsulate your IBOutlets
& IBActions
whenever possible!