An example app using design patterns.
In this example I used:
-
MVC: Model View Controller.
-
Singleton: Creating only one instance for exists in the whole app.
-
Facade: A single interface to a complex subsystem.
-
Decorator: Adds behaviors and responsibilities to an object without modifying its code ( creating category, using a delegate ).
-
Adapter: Allows classes with incompatible interfaces to work together ( creating a delegate ).
-
Observer: When one object notifies other objects of any state changes ( NSNotificationCenter, KVO ).
-
Memento: Captures and externalizes an object’s internal state ( NSUserDefault, archiving ).
-
Command: Encapsulates a request or action as an object ( NSMethodSignature, NSInvocation ).
This project was made base on post of Ray Wenderlich's blog