Passing data between ViewControllers versus doing local Fetch in each VC

Posted by Tofrizer on Stack Overflow See other posts from Stack Overflow or by Tofrizer
Published on 2010-04-29T23:31:32Z Indexed on 2010/04/29 23:37 UTC
Read the original article Hit count: 314

Hi All, I'm developing an iPhone app using Core Data and I'm looking for some general advice and recommendations on whether its acceptable to pass data between ViewControllers versus doing a local fetch in each ViewController as you navigate to it. Ordinarily I would say it all depends on various factors (e.g. performance etc) but the passing data approach is so prevalent in my app and I'm spooked by all the stories about Apple rejecting apps because of not conforming to their standard guidelines.

So let me put another way -- is it non-standard to pass data between VC's?

The reason I pass data so much is because each ViewController is just another view on to data present in my object model / graph. Once I have a handle on my first object in the first view controller (which I of course do have to fetch), I can use the existing object composition / relationships to drill down into the next level of detail into data and so I just pass these objects to the next VC.

Separately, one possible downside with this passing-data-to-each-VC approach is I don't benefit from (what I perceive to be) the optimisation/benefits that NSFetchedResultsController provides in terms of efficient memory usage and section handling. My app is read-only but I do have one table with 5000 rows and I'm curious if I am missing out on NSFetchedResultsController benefits. Any thoughts on this as well? Can I somehow still benefit from NSFetchedResultsController goodness without having to do a full fetch (as I would have already passed in the data from my previous VC)?

Thanks a lot.

© Stack Overflow or respective owner

Related posts about core-data

Related posts about uiviewcontroller