Home

Awesome

Library - iOS - MVP + Clean Architecture Demo

Description

Library is an iOS application built to highlight MVP (Model View Presenter) and Clean Architecture concepts

Run Requirements

High Level Layers

MVP Concepts

Presentation Logic

Clean Architecture Concepts

Application Logic
Gateways & Framework Logic

Demo Application Details

Debatable Design Decisions

Giving that a large majority of mobile apps are a thin client on top of a set of APIs and that most of them contain little business logic (since most of the business logic is found in the APIs) some of the Clean Architecture concepts can be debatable in the mobile world. Below you can find some:

The list above is definitely not complete, and if you identify other debatable decisions please create an issue and we can discuss about it and include it in the list above.

For the items listed above (and also for other items of your own) it is important that you use your own judgement and make an informed decision.

Keep in mind that you don't have to make all the design decisions up front and that you can refactor them in as you go.

Discuss about all the design decision with your team members and make sure you are all in agreement.

Useful Resources

MVP & Other presentation patterns

Clean Architecture

Unit Tests

Contributing

Please feel free to open an issue for any questions or suggestions you have!