 <p>If we were to follow the MVC architecture, and Cocoa Touch does, the model layer should be completely abstracted from view layer. In this case, giving your CData class access to an IBOutlet violates this principle - assuming that CData is a model-type class.<br /> Like you said, one way of going about it is to return something from <code>-calculateString</code>. This may seem like more code but does not limit the reusability of your model class.</p>