Use Xamarin.Forms and surprise your customers when develop native apps, in less time and cheaper

28
Use Xamarin.Forms and surprise your customers when develop native apps, in less time and cheaper Paulo Ortins - @pauloortins – [email protected]

Transcript of Use Xamarin.Forms and surprise your customers when develop native apps, in less time and cheaper

Use Xamarin.Forms and surprise your customers when develop native apps, in less time and

cheaper

Paulo Ortins - @pauloortins – [email protected]

Founder at OnceDev

C# <3

Xamarin <3

People <3

Community <3

Xamarin Traditional

Xamarin Traditional

UI

WindowsPhone

UI

Android

UI

iOS

ViewModels

Services

Native APIs

API Natives Mirroring

WindowsPhoneAndroid

Text-to-speech

iOS

System.NetSystem

System.IOSystem.XmlSystem.Linq

ActionBarNFC

PrintingRenderScript

Microsoft.PhoneWindows.Networking

Windows.StorageWindows.Foundation

Microsoft.Devices

MapKitUIKit

iBeaconCoreGraphicsCoreMotion

3 classes - 1 component

TextBlockTextViewUILabel

TextBoxEditTextUITextField

ButtonButtonUIButton

It can be better…

TextBlockTextViewUILabel

TextBoxEditTextUITextField

ButtonButtonUIButton

Label

Entry

Button

Windows Phone

Android

iOS

We need a Wrapper!

ÚNICO CÓDIGO

Xamarin.Forms

new ContentPage {  Content = new Label() {     VerticalOptions = LayoutOptions.Center,     HorizontalOptions = LayoutOptions.Center,     Text = ”Hello Florianópolis!"  }};

Label

var picker = new Picker() {   VerticalOptions = LayoutOptions.Center,   HorizontalOptions = LayoutOptions.Center};

picker.Items.Add ("Florianópolis");picker.Items.Add ("São Paulo");picker.Items.Add ("Porto Alegre");picker.SelectedIndex = 0;

Picker

new ContentPage {   Content = new ListView() {      ItemsSource = new [] {"Salvador", "Florianópolis",                             "São Paulo", "Brasília"}   }};

ListView

Xamarin.Forms

Xamarin.Forms

How it works?

Core

Platform.iOS

Platform.Android

Platform.WP

How it works?

Label

LabelRenderer

LabelRenderer

LabelRenderer

Xamarin Traditional

UI

WindowsPhone

UI

Android

UI

iOS

ViewModels

Services

Native APIs

Xamarin.Forms

WindowsPhoneAndroidiOS

ViewModels

Services

Native APIs

UI

Demo: Xamarin.Forms

Real Apps

• App to display real-time data from an ERP (Sales, Expenses, Suppliers and so on)

• A lot of graphs (line, pie and bar) to display data

• 300h of development (Backend e Mobile)

• 2 days to migrate from Android to iOS

Conttroller Super Diretor

-

94%96%Code

Sharing

• App to manage sales people and enable them to create orders from the app

• App should work both online and offline (data synchronization)

• 600h of development (Backend e Mobile)

• 1 week to migrate from Android to iOS

Conttroller Força de Vendas

-

93%95%Code

Sharing

Forms x Traditional

How to start

• http://developer.xamarin.com/ - Official Site

• http://planet.xamarin.com/ - Xamarin Posts Aggregator

• www.pauloortins.com - My Blog

• www.syntaxismyui.com/ - Adam Wolf’s Blog

• http://developer.xamarin.com/guides/cross-platform/xamarin-forms/creating-mobile-apps-xamarin-forms/ - Charles Petzold’s Book

• http://www.xforms-kickstarter.com/ - Falko Schindler’s Book

Thank you!

paulocesar.ortinsbrito

@pauloortins

[email protected]