xamarin forms
DESCRIPTION
An overview of Xamarin Forms #dotbariTRANSCRIPT
Xamarin.Forms#dotbari
write once, run everywhere and BE NATIVE!
What is Xamarin?• Un framework cross-platform per lo sviluppo
di applicazioni mobile in C#• Un ambiente di sviluppo
– Xamarin Studio– Xamarin plug-in per Visual Studio
• Un ambiente di test con Xamarin Test Cloud
Xamarin Approach
Shared App Logic
Native UIC#
Native UIC#
Shared C# App Logic Shared C# App Logic
Shared App Logic
Shared UICode
Android UI
Code
WindowsUI
Codein C#
Shared App Logic
Shared App Logic
iOS UI
AndroidUI
WindowsUI Shared UI
Code
iOS UI Android UI
Windows UI
Shared App Logic
Shared App Logic
Native UIC#
Native UIC#
Native UIC#
Shared C# App Logic Shared C# App Logic
Shared App Logic
Shared UICode
Android UI
Code
WindowsUI
Codein C#
Shared App Logic
Shared App Logic
iOS UI
AndroidUI
WindowsUI Shared UI
Code
Model
View and ViewModel(UI and controller)
Traditional (80% code reuse)
MVVM con Xamarin.Forms(99,9% code reuse)
ModelView ViewModel
How to display information
What to displayFlow of interaction
Business LogicData objects
Events
Data Dat
a
Model-View-ViewModel
ModelView ViewModel
Xamarin.Forms Data Binding
Events
Data
Model-View-ViewModel
What is Xamarin.Forms?• UI condivisa
– 40+ Pages, Layouts, Controls• Dichiarativa con XAML (standard 2009)
– Two-way Data binding– Commands– Converters
What is Xamarin.Forms?• Navigation• Animation API• Dependency Service• Messaging Center• Custom Controls• Gesture Recognizers• Xamarin.Forms.Maps
WP
Android
iOS
Xamarin.Forms• La UI è composta da controlli “platform-
indipendent”• I controlli vengono “tradotti” nei controlli
specifici
Label
UILabel
TextView
TextBlock
LabelRenderer
LabelRenderer
LabelRenderer
DEMO
Riferimenti• Xamarin
– http://www.xamarin.com– http://blog.xamarin.com– http://forums.xamarin.com
• Il mio blog– http://www.fabiocozzolino.eu– @fabiocozzolino