Working with Cocoa-Touch, but this is a general question.
Is it OK for views to keep a references to their view controller and deal with data? I recently came across a code base that does this through out the app - For example, there's a table view controller and it's cells have a weak reference to the view controller (so no retain cycles). The cells present new view controller via
[self.parentVC presentViewController.....];
and dismiss it in similar fashion. Also, they handle changes in data/network operations as well.
Until I saw this, I was accustomed to creating protocols for each cell and talking to the parent view controller via them. Using the approach of directly referencing view controller get rid of all the protocols.
To me this seems really bad but not sure if it's common.