Introduce current popular application architectures and comparing their pros. and cons.
Also, you can know why you should need a good architecture for your application in Android/iOS.
11. ■ Model
– Fetch, Store, Update, …etc.
– Access Remote or Local data
■ View
– XML(Android)/Xib or StoryBoard(iOS)
■ Controller
– Activity/Fragment(Android) or UIViewController(iOS)
– UI reactions(listeners, properties, …etc.)
– Data Processing
13. ■ Model
– Fetch, Store, Update, …etc.
– Access Remote or Local data
■ View
– Activity/Fragment(Android) or UIViewController(iOS)
– XML(Android)/Xib or StoryBoard(iOS)
■ Presenter
– Prepare the data for showing
– A mediator between the View and the Model
15. ■ Model
– Fetch, Store, Update, …etc.
– Access Remote or Local data
■ View
– Activity/Fragment(Android) or UIViewController(iOS)
– XML(Android)/Xib or StoryBoard(iOS)
■ ViewModel
– A mediator between the View and the Model
– Databinding to View components
17. ■ View
– Activity/Fragment(Android) or UIViewController(iOS)
– XML(Android)/Xib or StoryBoard(iOS)
■ Interactor
– Business logic for accessing the data from Model
■ Presenter
– Bridge between Interactors and Views
– Prepare the data for showing
■ Entity
– Basic model objects
■ Router
– Navigation logic
23. 2
Distribution Testability Easy of use
MVC
MVP
MVVM
VIPER
Clean
Architecture1. Distribution
2. Testability
3. Easy of Use
Developing cost Complexity Number of Class
24.
25. 5C
■ A 5 E5CE CA - - . - - . > 5 C E E C
■ - E B> E > 5 C E E C E A E A B> 5E
■ A 5>> 5C E 5 A BE A EA E A E BACE5 E
■ C I A , 2,, B A A C E EA AA 5 5C E E C