desert code camp 2014, ios and android development for c# developers with xamarin

38
@JamesMontemagno Introduction to Cross Platform Mobile Development in C# with Xamarin

Upload: james-montemagno

Post on 14-Jun-2015

517 views

Category:

Engineering


1 download

DESCRIPTION

As the mobile landscape continues to expand and evolve managing multiple code bases in different programming languages and development tools can become a nightmare fast. In this session learn how to leverage the awesome features of C# and combine them with Xamarin technology to create beautiful native cross platform mobile apps from a shared C# code base with the tools that you love.

TRANSCRIPT

Page 1: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

@JamesMontemagno!!

Introduction to Cross Platform Mobile Development in C# with Xamarin!

Page 2: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Who is this guy?!

James Montemagno!Developer Evangelist, Xamarin!

@JamesMontemagno !!motzcod.es!

MyStepCounterApp.com!

Page 3: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

The best language for Windows development. Modern Features • Advanced Tools • Proven Libraries • Large Community • Statically Typed

Page 4: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Windows Developer in Phoenix

Page 5: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

I had an opportunity.

Page 6: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Xamarin makes C# the best language for mobile development. Native Code Generation • Platform API Bindings • Code Sharing • Visual Studio

+

Page 7: Desert code camp 2014, iOS and Android development for c# developers with Xamarin
Page 8: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

What is native?!

Page 9: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

The Anatomy of a Native App!

Native User Interfaces! Native API Access! Native Performance!

Page 10: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Architecting !Mobile Apps!

Page 11: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

The Silo Approach!

Build App !Multiple Times!

Page 12: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

The Write-Once-Run-Anywhere Approach!

Lowest Common!Denominator!

Page 13: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Xamarin’s Unique Approach!

Native With !Code Sharing!

Page 14: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

How Xamarin!Works!

Page 15: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Windows APIs!

Page 16: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

iOS APIs | 100% Coverage!

Page 17: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Android APIs | 100% Coverage!

Page 18: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Anything you can do in Objective-C, Swift, or Java !can be done in C# with Xamarin using Visual Studio!

Page 19: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Xamarin.iOS does full Ahead Of Time (﴾AOT)﴿ compilation to produce an ARM binary for Apple’s App Store.

Native Performance

Xamarin.Android takes advantage of Just In Time (﴾JIT)﴿ compilation on the Android device.

Page 20: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Always Up to Date

Same day support for iOS 5, iOS 6, iOS 6.1, iOS 7, iOS 7.1, iOS 8!

Page 21: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Emerging Technologies & Devices

Android Wear Google Glass Amazon Fire Phone Amazon Fire TV!

Page 22: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Where to start!

Page 23: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Development Environment

Xamarin Studio PC or Mac

Visual Studio Plugin VS 2010/2012/2013

Page 24: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Android Develop on:!•  Mac or PC!•  Xamarin Studio or Visual Studio!

Run on:!•  Google Emulators!•  Xamarin Android Player!•  Physical Device!

Page 25: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Develop on:!•  Mac in Xamarin Studio!•  or!•  PC in Visual Studio (connected to Mac “Build

Host”)!

Run on:!•  iOS Simulators on Mac!•  iOS Device plugged into

a Mac!

Page 26: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Live Coding Adventure 1!

Page 27: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Let’s talk about !code sharing…!

Page 28: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Code Sharing: Accelerate Development

Android  

iOS  

Mac  

WinPhone  

WP  

Page 29: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

File Linking

Page 30: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Shared Code Projects

Page 31: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Portable Class Libraries •  1 Assembly •  Multiple Platforms •  Including: •  Xamarin.Android •  Xamarin.iOS

Page 32: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Portable Class Libraries Features • Centralized Code Sharing • How you expect it to work • Debug seamlessly into and out of PCL

• Project/Assembly Sharing • NuGet

Page 33: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Live Coding Adventure 2!

Page 34: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Share More Code!

Page 35: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Xamarin + Xamarin.Forms!With Xamarin.Forms: !

more code-sharing, native controls!Traditional Xamarin approach!

Shared UI Code!

Page 36: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Arizona – Xamarin!Monthly Mobile .NET User Group!meetup.com/azxplatform!

More Xamarin in Phoenix!!

Game Jam at UAT in Tempe!Nov. 7th – 9th !48 hours of game development!Follow me on Twitter for details!@JamesMontemagno!!

Page 37: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Unrivaled Mobile Development Training!Live unlimited mobile development training from mobile experts, !in your time-zone, on your schedule and as often as you'd like.!

xamarin.com/university!

Page 38: Desert code camp 2014, iOS and Android development for c# developers with Xamarin

Q & A!!Get your free C# t-shirt:!xamarin.com/shirt!

Find Me:!@JamesMontemagno | motzcod.es!@XamarinHQ | blog.xamarin.com!