https://github.com/chicio/model-view-presenter
Example native iOS app and example native Android app showcasing Model View Presenter architectural pattern. :four_leaf_clover: This repo contains the examples shown in my blog posts "Model View Presenter on iOS: no more excuses, write your unit test" and "Model View Presenter on Android: unit test for everything":hibiscus:
https://github.com/chicio/model-view-presenter
clean-code mobile model-view-presenter test-driven-development
Last synced: about 1 year ago
JSON representation
Example native iOS app and example native Android app showcasing Model View Presenter architectural pattern. :four_leaf_clover: This repo contains the examples shown in my blog posts "Model View Presenter on iOS: no more excuses, write your unit test" and "Model View Presenter on Android: unit test for everything":hibiscus:
- Host: GitHub
- URL: https://github.com/chicio/model-view-presenter
- Owner: chicio
- License: mit
- Created: 2017-07-30T22:16:44.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2021-12-28T08:38:03.000Z (over 4 years ago)
- Last Synced: 2025-03-30T00:51:12.622Z (about 1 year ago)
- Topics: clean-code, mobile, model-view-presenter, test-driven-development
- Language: Java
- Homepage: https://www.fabrizioduroni.it/blog/
- Size: 825 KB
- Stars: 6
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Model View presenter
[](https://travis-ci.org/chicio/Model-View-Presenter)
[](https://github.com/chicio/Model-View-Presenter/blob/master/LICENSE.md)
[](https://img.shields.io/badge/platforms-iOS%20%7C%20Android-orange.svg)
Example native iOS app and example native Android app showcasing Model View Presenter architectural pattern.
***
### Overview
The focus of this project is to show the [Model View Presenter](https://en.wikipedia.org/wiki/Model–view–presenter "Model View Presenter architectural pattern") architectural pattern in the development of application of various types.
I talked about the [Model View Presenter](https://en.wikipedia.org/wiki/Model–view–presenter "Model View Presenter architectural pattern") in two blog posts:
* [Model View Presenter on iOS: no more excuses, write your unit test](https://www.fabrizioduroni.it/2017/08/11/model-view-presenter-architecture-ios-swift-unit-test/)
* [Model View Presenter on Android: unit test for everything](https://www.fabrizioduroni.it/2017/10/27/model-view-presenter-architecture-android-java/)
This architectural pattern let you develop GUI oriented software completely testable. In fact you can develop your application using [Test Driven Development](https://en.wikipedia.org/wiki/Test-driven_development "Test Driven Development") technique.
In particular in this repo you will find the same application developed for various platform/languages. This application will display a list of products and show the detail of one of them when a it is selected. Below you can find a simple mockup of the mobile version of this app.

### Supported platform
The application has been developed for various platform/language. At the moment you can find the implementation for:
* iOS using Swift
* Android using Java