getting started with cross platform mobile dev in c# (nova mobile c# dev group 3/12/14)
TRANSCRIPT
![Page 1: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/1.jpg)
GETTING STARTED WITH CROSS PLATFORM MOBILE
DEV IN C#
Ed SniderFeb Mar 12 2014Northern VA Mobile C# Developers’ Group
![Page 2: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/2.jpg)
CONTENT
Introduction
The Problem with Native Mobile App Dev
The Benefits of Multi-Platform Mobile Dev with C#
What is Xamarin?
What does this mean for how we build mobile apps?
How?
Share Code
Leverage the MVVM Pattern
Code!
Wrap up
![Page 3: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/3.jpg)
INTRODUCTION
Ed Snider - @edsnider
Developer at InfernoRed Technology
Co-Organizer of NoVA Mobile C# Developers Group
www.infernored.com@infernoredtech
![Page 4: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/4.jpg)
THE PROBLEM WITH TRADITIONAL NATIVE MOBILE APP DEV… Native mobile apps are great but here’s the problem:
Several Platforms: Windows, iOS, Android
Several Languages: C#, Objective-C, Java
Maintenance nightmares
Customers and end-users suffer
![Page 5: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/5.jpg)
THE BENEFITS OF MULTI-PLATFORMNATIVE MOBILE APP DEV WITH C# Develop for all platforms with a single language – C# - using Xamarin
Harness the power of the .NET framework
Single solution with shared code
Unified and consistent maintenance/testing
Feature parity across platforms = happy end users
+ C#
![Page 6: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/6.jpg)
WHAT IS XAMARIN?
Xamarin is built on Mono
Allows native app compilation on Android and iOS using C#
100% API Coverage – All iOS and Android APIs are exposed as C# class libraries
Up-to-date with API releases from Apple and Google
![Page 7: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/7.jpg)
XAMARIN DEVELOPMENT TOOLS
Xamarin for Visual Studio Xamarin Studio for Windows and Mac
![Page 8: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/8.jpg)
WHAT DOES THIS MEAN?
You can build most of your app using shared logic
You can use a single language with familiar tools
You can keep native and platform-specific/familiar UIs
![Page 9: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/9.jpg)
HOW?
![Page 10: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/10.jpg)
LEVERAGE THE MVVM PATTERN
View (UI)
ViewModel
Model
Data BindingCommands
ServiceInterfaces
ConnectivityLocationCameraEtc…
Platform Specific Service
Implementations
![Page 11: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/11.jpg)
SHARE CODE!
Portable Class Library (PCL)
ViewModelsModels
Core App LibraryServices, Business Logic, Service Access, Data Access, etc.
Windows iOS Android
View / UIPlatform Specifics
View / UIPlatform Specifics
View / UIPlatform Specifics
![Page 12: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/12.jpg)
SOME OTHER COOL THINGS ABOUT XAMARIN… Component Store: http://components.xamarin.com/
.NET Mobility Scanner: http://scan.xamarin.com/
F# preview: http://docs.xamarin.com/guides/cross-platform/fsharp/
Xamarin Test Cloud: http://xamarin.com/test-cloud
![Page 13: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/13.jpg)
RESOURCES
Demo code: https://github.com/edsnider/CoffeeFinder-XamarinDemo
Xamarin Sample / Starter-Apps Employee Directory App - http://xamarin.com/prebuilt/employeedirectory Field Service App - http://xamarin.com/prebuilt/fieldservice
![Page 14: Getting Started with Cross Platform Mobile Dev in C# (NoVA Mobile C# Dev Group 3/12/14)](https://reader038.vdocuments.mx/reader038/viewer/2022102815/554a49dab4c905293a8b5841/html5/thumbnails/14.jpg)
PUBLIC SERVICE ANNOUNCEMENT FROM @VISUALSTUDIO