This repository contains examples for different architectural patterns in the iOS environment. All examples puruse the same use case and have been developed with Swift 3.
The reason for this repository is my master thesis where I investigate every architecture for a direct comparison in terms of structure and process.
The following architectures have been investigated:
- Model-View-Controller (MVC)
- Model-View-Presenter (MVP) - passive variant
- Model-View-ViewModel (MVVM)
- View-Interpreter-Presenter-Entity-Router (Viper)
- CleanSwift
- ReSwift
The examples consist of an simple persons app where an user is able to view persons, add a person and remove all persons. The persons will be saved persistent with Realm.
All projects uses CocoaPods.
Run pod install
before launching a project.
Any questions? Feel free to contact me.