Skip to content

infoweb77/iOS-architecture-examples

Repository files navigation

iOS architecture examples

MVC, MVP, MVVM, VIPER, Redux and others by examples
A collection of simple one screen weather apps to showcase and discuss different architectural approaches in iOS

swift version platform license

Architectures

This repository hosts each sample app in separate directory.


Single screen app examples

The purpose of having examples with single page applications is highlighting connection between view code and business logic code.

Example Description
mvc Standard MVC pattern recommended by Apple. Uses composition design pattern to make ViewController smaller.
mvp Standard MVP pattern.
mvvm-closures Binds ViewController and ViewModel using closures and swift functions
mvvm-rxswift-pure Uses RxSwift and observables as binding mechanism between ViewController and ViewModel.
mvvm-rxswift-subjects-observables Uses RxSwift with observables as ViewModel outputs and subjects as ViewModel inputs.
reactorkit Uses ReactorKit as a framework for a reactive and unidirectional Swift application architecture.
rxfeedback-mvc Uses RxFeedback in MVC architecture
viper Uses VIPER architecture

Licence

MIT.