Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.

Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.

Real world apps with Xamarin and MVVM

With Xamarin now free for everyone, the popularity of the cross-platform framework is increasing rapidly. We’ve now had the time to play around with it, now the time has come to build serious apps with it.
In this session, you’ll learn how a real-world Xamarin application architecture is built, with an emphasis on testability and maintainability. The app we’ll look at is called MyTrains, an application used to book train journeys.
You’ll see an architecture that has proven itself over different projects already. The architecture is using the MvvmCross framework. You’ll see how the architecture is built from the ground up, starting with model, the repositories and the services. On top of that, we’ll build the view models which will be used by the views in the iOS and Android apps. Along the way, you’ll see how MvvmCross uses data binding and commanding and how navigation is handled in MVVM
You’ll walk away with an example of how real applications in Xamarin should be built. You’ll be able to use this as your starting point for your next Xamarin application.

the native Application will 'be created' first within the construction of the native Application, a Setup will be created the Setup will perform very basic tasks - e.g. initialisation of the IoC system (seehttps://github.com/slodge/MvvmCross/wiki/Service-Location-and-Inversion-of-Control) then the Setup will call into the core project, construct an App and will call Initialize on it. during the Initialize your App will typically: register your app-specific services with the IoC system create and register a Start object the Setup will then configure the UI side of the project - especially things like lookup tables for views finally the Setup will start the MvvmCross binding engine (if needed) with Setup complete, your native Application can then actually start. to do this, it requests a reference to the Start object and calls Start() on it after this, the app will start presenting ViewModels using databound Views

the native Application will 'be created' first within the construction of the native Application, a Setup will be created the Setup will perform very basic tasks - e.g. initialisation of the IoC system (seehttps://github.com/slodge/MvvmCross/wiki/Service-Location-and-Inversion-of-Control) then the Setup will call into the core project, construct an App and will call Initialize on it. during the Initialize your App will typically: register your app-specific services with the IoC system create and register a Start object the Setup will then configure the UI side of the project - especially things like lookup tables for views finally the Setup will start the MvvmCross binding engine (if needed) with Setup complete, your native Application can then actually start. to do this, it requests a reference to the Start object and calls Start() on it after this, the app will start presenting ViewModels using databound Views

Real world apps with Xamarin and MVVM

1.
Building a real-world
cross-platform app with
Xamarin and MVVM
Gill Cleeren
@gillcleeren

3.
Xamarin, HTML5, WPF, social
and Windows development
http://gicl.me/mypscourses

4.
Overview
We’ll start with
Looking at the final app
Understand the concepts of the architecture
Understand MvvmCross
And then…
We’ll explore the architecture
We’ll look at the shared blocks
We’ll see the Android and iOS apps
And we’ll add some tests
And then we’ll all go home. Or get a drink.