I'm curious in getting opinions on the best place to store application data - meaning data that is shared between two or more views. In my case, I only need the model to live as long as the application but I struggle with the best place to manage it and wanted the experienced opinions of others.
My app setup is a tab bar based application with each tab view having its own controller. I thought about using the tab bar controller manage the model and inject into each view controller as needed, but then I have a dependency on the tab bar itself. I also thought about a Singleton data storage object that wouldn't have a dependency and I can access from any class. It also crossed my mind to store it in the Application Delegate, but that just felt dirty to me.
So how do you guys handle the model that needs to be accessed from several views?
Thanks in advance.
P.S. I'm reading the View Controller Programming guide right now.
My app setup is a tab bar based application with each tab view having its own controller. I thought about using the tab bar controller manage the model and inject into each view controller as needed, but then I have a dependency on the tab bar itself. I also thought about a Singleton data storage object that wouldn't have a dependency and I can access from any class. It also crossed my mind to store it in the Application Delegate, but that just felt dirty to me.
So how do you guys handle the model that needs to be accessed from several views?
Thanks in advance.
P.S. I'm reading the View Controller Programming guide right now.