On iOS, a model (MyModel class) is usually a subclass of NSObject or in the case of Core Data (an iOS framework that helps save data to a database locally on the device) NSManagedObject. As with any model object, it contains instance variables and getter / setter methods . Most object-oriented languages โโhave a mechanism for providing encapsulation , in iOS the property provides encapsulation, and the synthesizing keyword automatically generates getter and setter methods.
View is subclass from *UIView* which provides the capability for handling touch events and drawing. The UIKit structure contains classes for drawing typical interface elements such as tables (lists), buttons, text fields, sliders, and much more.
Controller is generally a subclass of **UIViewController** that manages a view, it is also responsible for responding to delegation messages and messages about the target action. You may have a UITableViewController, which is a subclass of the UIViewController that controls the UITableView
TabBar and Navigation View Controllers manage the array of view controllers, but Navigation VC controls the VC as a data structure < stack and yes it is a viable usage
check out the Design Patterns on the Apple ios library resource for further reference and here is an example of Apple code to understand how to create a network application using the Model-View-Controller design pattern
this tutorial talks about how to get started with JSON , try integrating FB into your application to understand JSON as fun and easy
start encoding NSUserDefault in your application e.g.
here is a good tutorial I started with ..
happy coding :)
source share