I have been wondering for a while, after asking different people and without any of them providing what I would call an \"at least a bit concrete answer\":
Quest
It is tempting to put everything in the AppDelegate, but if you start doing this, then your AppDelegate will be full of reference hacks. If you are doing a strict MVC, then you should have 3 things:
So for example, I have a model Foo and a Foo controller. I would have:
And finally, to answer your question, I would store my references to Foo's in the foo Controller. I like to use singletons for my controllers, but thats just me. If you do use a singleton, you can just do something like this: [[FooController sharedInstance] listOfFoos]
to get your Foo's