Skip to content

A sample project that shows the implementation of MVVM-C design pattern

Notifications You must be signed in to change notification settings

osama10/MVVM-C-Example

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 

Repository files navigation

MVVM-C Example

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 @ osama.binbashir@yahoo.com

About

A sample project that shows the implementation of MVVM-C design pattern

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages