Osama10/MVVM-C-Example - GitHub
It's simple master and detailview application that's developed using MVVM-C pattern.
Why MVVM-C
MVVM is a design pattern that is widely used in the iOS application development. It take the data presentation and buisness logic of showing data to View out of ViewController making it clean, reuseable and small. ViewModel binds data to to UI elements and changes UI as soon as data changes. ViewController's responsibility is to notify ViewModel about the events that occur on the UI so ViewModel can react to those event accordingly.
Combining co-ordinator with it, further reduces ViewController's responsibilty by taking out the navigation logic from it too and making it completely dumb and reusable.
Benefits
- Avoids Massive-ViewControllers
- Keep UI as dumb as possible
- Define single responsibility to each module
- Works best with reactive-frameworks such as RX-Swift
Demo

Special Mentions
Thanks furqanmk for code review and pointing out improvements
Get in touch
I am always open to constructive suggestions and feedback. You can find me at LinkedIn, Stack Overflow or you can contact me @ [email protected]
Từ khóa » C Mvvm
-
The Art Of The MVVM-C Pattern - Better Programming
-
Understanding MVVM-C - LinkedIn
-
IOS Architecture: MVVM-C, Introduction (1/6) - Medium
-
MVVM-C And Separation Of Concerns - Cocoacasts
-
Overview Model-View-ViewModel+Coordinator(MVVM-C) - Viblo
-
MVC Vs MVVM: Key Differences With Examples - Guru99
-
MVVM-C A Simple Way To Navigate - Trivago Tech Blog
-
MVVM-C In Practice - YouTube
-
Short Walk-through: Implementing The MVVM-C Pattern - DECODE
-
Model–view–viewmodel - Wikipedia
-
MVVM (Model View ViewModel) Introduction: Part 1 - C# Corner
-
MVVM Architecture - C# Corner
-
Patterns - WPF Apps With The Model-View-ViewModel Design Pattern