EastBay.net Building Mobile Apps with Xamarin and Visual Studio

33
+ 14 July 2016

Transcript of EastBay.net Building Mobile Apps with Xamarin and Visual Studio

Page 1: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

+

14 July 2016

Page 2: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

Craig Dunn

Xamarin Microsoft

[email protected] conceptdev.

blogspot.com

@conceptdev

Page 3: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

First

release of

Xamarin.Mac

Launch

Partner

Program

200,000

Developers

Xamarin

Founded

First release of

Xamarin.Android

Xamarin.iOS launches

(originally known as

MonoTouch)

Ximian

Founded

2001 2003 2009 2011 2012 2013

Mono

Launches

Ximian Acquired

by Novell

Xamarin 2.0

Component Store

Xamarin Test Cloud

Evolve 2013

Microsoft Partnership

500,000

Developers

100+ Partners

100+ Components

2014

//

Xamarin 3

2000

SAP Partnership

Fire TV Support

Salesforce partnership

Visionary in Gartner Magic

Quadrant

Google Glass Support

Visual Studio Partner

of the Year

Android Wear Support

Xamarin Evolve 2014

800,000

Developers

200+ Partners

200+ Components

2015

1 Million Developers

IBM Partnership

Visual Studio 2015 Support

Oracle Partnership

Apple Watch Support

C# 6 Support

1,100,000

Developers

230+ Partners

300+ Components

Xamarin Insights

Xamarin University

Xamarin.iOS

Xamarin.Android

Xamarin.Mac

2016

Microsoft

Test Cloud

Xamarin.Forms

.NET & Mono

MonoMac

MoonlightSilverlight

2010

Page 4: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

Shared C# codebase • 100% native API access • High performance

iOS C# UI Windows C# UIAndroid C# UI

Shared C# Code

Page 5: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

✓ Android

✓ iOS

✓ Xamarin.Forms

File > New

App Settings

Screen design

Images & Resources

C# code

X

Page 6: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

Android

Page 7: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

✓ demo: TaskyProPortable

Page 8: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

Mono

Android C#

.NET

Windows C#

Shared C# Code

Mono

iOS C#

Parts of Mono being used

(unused code linked away)

runs natively on Android

• User Interface Code (C#)

• Android XML layouts

• Platform features (eg Android M)

Widgets

etc

SQLiteURLConnection

file system

etc

native UI

Android

Java

C NDK“bindings”

Shared C# Code

• Business Logic

• Database (SQLite)

• Web services

• File operations

Page 9: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

Xamarin.Android takes advantage of

Just In Time (JIT) compilation on the

Android device.

Page 10: EastBay.net Building Mobile Apps with Xamarin and Visual Studio
Page 11: EastBay.net Building Mobile Apps with Xamarin and Visual Studio
Page 12: EastBay.net Building Mobile Apps with Xamarin and Visual Studio
Page 13: EastBay.net Building Mobile Apps with Xamarin and Visual Studio
Page 14: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

iOS

Page 15: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

✓ Create iOS, tvOS, watchOS apps

✓ Access all native iOS features

✓ Edit Storyboards and XIBs

✓ Build, test in simulator, debug

✓ Also use Xamarin.Studio on OS X

Page 16: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

✓ demo: TaskyStoryboard

Page 17: EastBay.net Building Mobile Apps with Xamarin and Visual Studio
Page 18: EastBay.net Building Mobile Apps with Xamarin and Visual Studio
Page 19: EastBay.net Building Mobile Apps with Xamarin and Visual Studio
Page 20: EastBay.net Building Mobile Apps with Xamarin and Visual Studio
Page 21: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

✓ demo: To9o

Page 22: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

Mono .NETMono

iOS C# Windows C#Android C#

Shared C# Code

Parts of Mono being used

(unused code linked away)

runs natively on iOS

• User Interface Code (C#)

• Storyboards & XIBs

• Platform features (eg iOS 9)

Shared C# Code

• Business Logic

• Database (SQLite)

• Web services

• File operations

UIKit

PassKit

etc

SQLite

NSUrlSession

file system

etc

native UI

iOS

CocoaPods

Obj-C libs“bindings”

Page 23: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

Xamarin.iOS does full Ahead Of Time

(AOT) compilation to produce an ARM

binary for Apple’s App Store.

Xamarin.Android takes advantage of

Just In Time (JIT) compilation on the

Android device.

Page 24: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

https://medium.com/@harrycheung/mobile-app-performance-redux-e512be94f976#.5thv4hcj8

Page 25: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

Mac

iOS

Android

Windows Phone

iCircuit Touch Draw

86%

14%

72%

28%

70%

30%61%39%

88%

12%

76%

24%

90%

10%

Page 26: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

Xamarin.Forms

Page 27: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

Traditional Xamarin

Approach

With Xamarin.Forms:

More code-sharing, still all native

iOS C# UI Windows C# UIAndroid C# UI

Shared C# Backend

Shared UI Code

Shared C# Backend

Page 28: EastBay.net Building Mobile Apps with Xamarin and Visual Studio
Page 29: EastBay.net Building Mobile Apps with Xamarin and Visual Studio
Page 30: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

✓ demo: Todo (Xamarin.Forms)

Page 31: EastBay.net Building Mobile Apps with Xamarin and Visual Studio
Page 32: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

[email protected] conceptdev.blogspot.com @conceptdev

Sample Code

github.com/xamarin/mobile-samples

github.com/conceptdev/xamarin-samples

github.com/xamarin/xamarin-forms-samples

Page 33: EastBay.net Building Mobile Apps with Xamarin and Visual Studio

Craig Dunn

Xamarin Microsoft

[email protected] conceptdev.blogspot.com @conceptdev

Thank you!