Git Product home page Git Product logo

xamarin.native.mvp's Introduction

Xamarin.Native.MVP

In this example we explain a simple way to use Model View Presenter (MVP) pattern to develop a mobile application with Xamarin platform.

A MVP pattern, derived from Model View Controller (MVC), use a Presenter as a middle layer between the View and the Model. The Presenter retrive data from the businner logic and returns it to the View but, unlike the typical MVC, it also decides what happends when you interact with the View.

The MVP provides modularity, testability and, in general, a more clean and maintenable code.

The application is composed of a simple list of item, in this case we decide a list of students, and a separate view to create new item and to show properties of items previously created at the main list.

The example is composed of two projects: Common and MVP.Example, and both are correlated with the related test project.

Common project have separate UnitTest to check correctness of the model (interaction to the database) and presenters (interaction between model, presenter and view).

MVP.Example have dedicated UITest project to test the view operations.

The decision to develop all common function on separate project is for multi platform purpouses. If we want to implement same application on IOS we have only to implement the views and to implements view functions with the function offers by the presenter defined in the common project.

xamarin.native.mvp's People

Contributors

dependabot[bot] avatar zanuccod avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

bb2tech janeconan

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.