ANUG - intro to Xamarin and Xamarin.Forms

Post on 22-Jun-2015

579 views 2 download

Tags:

description

Introduction to Xamarin and the new Xamarin.Forms.

transcript

Hi, I’m James.!Xamarin, Developer Evangelist!

@JamesMontemagno!!

Xamarin.com | @XamarinHQ!

Windows Developer in Phoenix

Mobile Developer in Seattle

I had an opportunity.

Productive environment

Shared code

High performance

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

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

+

Xamarin ‘embraced and extended’ .NET

60 days to go

35 days of C# Windows Store

35 days of Java

35 days of Objective-C

35 days of C# Windows Phone 140 DAYS!

42 days of C# Windows Store/Phone

35 days of Java 35 days of Objective-C

112 DAYS!

60 days of C#

70% code reuse

Development time cut in half

Success

Windows Store iOS Android Windows Phone

Architecting !Mobile Apps!

Silo  Approach  

Build  Apps  Mul1ple  Times  

Write  Once,  Run  Anywhere  Approach  

Lowest    Common  Denominator  

Xamarin’s Unique Approach!

Native With !Code Sharing!

Windows APIs!

iOS APIs | 100% Coverage!

Android APIs | 100% Coverage!

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

C# runs on 2.6 Billion Devices!

How Xamarin Works

§  C# + .NET Runtime §  Native UI §  Native Performance

Automatically test your app on!hundreds of mobile devices !

Create native iOS, Android, Mac and Windows apps in Visual Studio and C#

Demo!

20 Minute Break!!Get your free C# t-shirt:!xamarin.com/shirt!!Follow Me:!@JamesMontemagno!

@XamarinHQ!#Xamarin!

Portable  Class  Libraries  

Xamarin.Forms!

With Xamarin.Forms: !more code-sharing, native controls!

Traditional Xamarin approach!

Shared UI Code!

Xamarin.Forms!

Quickly and easily build native user interfaces using shared code!!Xamarin.Forms elements map to native controls and behaviors!!Mix-and-match Xamarin.Forms with native APIs!!!!!!!!!!

Shared UI Code!

What’s Included!§  40+ Pages, Layouts, and Controls!§  Build from code behind or XAML!

§  Two-way Data Binding!!§  Navigation!

§  Animation API!

§  Dependency Service!

§  Messaging Center!

Shared UI Code!

Pages!

Content" MasterDetail" Navigation" Tabbed" Carousel"

Layouts!

Stack" Absolute" Relative" Grid" ContentView" ScrollView" Frame"

Controls!

ActivityIndicator! BoxView! Button! DatePicker! Editor!

Entry! Image! Label! ListView! Map!

OpenGLView! Picker! ProgressBar! SearchBar! Slider!

Stepper! TableView! TimePicker! WebView! EntryCell!

ImageCell! SwitchCell! TextCell! ViewCell!

Page

StackLayout

Label Entry StackLayout

Content

Children

Button Button Image

Children

DEMO 1!Xamarin.Forms Walkthrough!

Data Binding!

Model-View-ViewModel!

Model"View" ViewModel"

How to display information!

What to display!Flow of interaction!

Business Logic!Data objects!!

Events!

Data!Data!

Model-View-ViewModel!

Model"View" ViewModel"

Xamarin.Forms Data Binding"

Events!

Data!

Data Binding!

Data Binding!

Data Binding!

Data Binding!

Demo 2!Weather App!

Extensibility!

§  Dependency Service!§  Lets shared code access platform-specific SDK features via an

Interface implementation!!!

Extensibility!

§  Step 1: Interface!!!

Extensibility!

§  Step 2: Implement on each Platform!

Extensibility!

§  Step 3: Register with Dependency Service!

Extensibility!

§  Step 4: Access from shared code!

DEMO 3!Weather App +!Text to Speech!

Animations API!

www.github.com/JamesMontemagno/FormsAnimations

www.github.com/JamesMontemagno/FormsAnimations

Resources!§  Documentation!§  http://developer.xamarin.com/guides/cross-platform/xamarin-forms/!

§  XAML Documentation!§  http://developer.xamarin.com/guides/cross-platform/xamarin-forms/

xaml-for-xamarin-forms/!!

§  Samples!§  https://github.com/xamarin/xamarin-forms-samples!

!!!

Learn more!

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

Get Started Today: xamarin.com/download | Students: student@xamarin.com "

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

@XamarinHQ!#Xamarin!