SlideShare una empresa de Scribd logo
Enfoque tradicional Xamarin Con Xamarin.Forms
iOS C# UI Windows C# UIAndroid C# UI
Shared C# Backend
Shared UI Code
Shared C# Backend
✓ 40+ Pages, layouts, y controles
(desde code behind o XAML)
✓ Two-way data binding
✓ Navegación
✓ Animation API
✓ DependencyService
✓ MessagingCenter
Shared C# Backend
Shared UI Code
Layouts
Pages
Stack Absolute Relative Grid ContentView ScrollView Frame
Content MasterDetail Navigation Tabbed Carousel
ActivityIndicator BoxView Button DatePicker Editor
Entry Image Label ListView Map
OpenGLView Picker ProgressBar SearchBar Slider
Stepper TableView TimePicker WebView EntryCell
ImageCell SwitchCell TextCell ViewCell
Permite la extensión de controles visuales añadiendo la
funcionalidad inexistente.
Se debe realizar cada extensión especifica por cada
plataforma, con lo cual, se trabaja con código nativo
Puedes reutilizar controles existentes de Xamarin Forms
para no empezar desde 0.
Xamarin.Forms Ecosystem
Nos abstraemos de la plataforma nativa para la
navegación
Navegación de pila como cualquier aplicación móvil
Abstraídos también de la plataforma
Todos los gestos “normales” dentro de una app móvil (Tap, Pinch,
Pan)
Se puede incluir dentro del XAML
Puedes crear tus propios contenedores de gestos.
Integrado nativamente en Xamarin Forms
Dependency Service propio
<?xml version="1.0" encoding="UTF-8"?>
<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="MyApp.MainPage">
<TabbedPage.Children>
<ContentPage Title="Profile" Icon="Profile.png">
<StackLayout Spacing="20" Padding="20"
VerticalOptions="Center">
<Entry Placeholder="Username"
Text="{Binding Username}"/>
<Entry Placeholder="Password"
Text="{Binding Password}"
IsPassword="true"/>
<Button Text="Login" TextColor="White"
BackgroundColor="#77D065"
Command="{Binding LoginCommand}"/>
</StackLayout>
</ContentPage>
<ContentPage Title="Settings" Icon="Settings.png">
<!-- Settings -->
</ContentPage>
</TabbedPage.Children>
</TabbedPage>
macOS Preview
Mejoras en GestureRecognizers
Android Support Libraries
PlatformSpecifics
Fast Scroll
NavigationPage Translucency
Blur Behind
Partial Collapse MasterPage
Native Control Binding
Map Extensibility
Fast Renderers Preview
Startup Time
ListView Scrolling
Memory Improvements
XAMLC
Bindable Picker
Frame Corners
Tizen
Forms Previewer
FlexLayout Preview
Xamarin.Forms Embedding
DataPages
Source: Matthew Robbins - MFractor
¿Preguntas?
Marco Antonio
Blanco
@marcoablanco

Más contenido relacionado

Similar a Dev days 2 Xamarin Forms

Introduction to .NET MAUI.pdf
Introduction to .NET MAUI.pdfIntroduction to .NET MAUI.pdf
Introduction to .NET MAUI.pdf
Luis775803
 
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
Luis Beltran
 
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.FormsTech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Javier Suárez Ruiz
 
Dev days 1 Introducción a Xamarin
Dev days 1 Introducción a XamarinDev days 1 Introducción a Xamarin
Dev days 1 Introducción a Xamarin
Marco Antonio Blanco Arellano
 
DotNetDom: El futuro de Xamarin
DotNetDom: El futuro de XamarinDotNetDom: El futuro de Xamarin
DotNetDom: El futuro de Xamarin
Javier Suárez Ruiz
 
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptxCOECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
Luis Beltran
 
Novedades de Xamarin 4
Novedades de Xamarin 4Novedades de Xamarin 4
Novedades de Xamarin 4
Javier Suárez Ruiz
 
Arquitectura xamarin - Nuestra primera app
Arquitectura xamarin - Nuestra primera appArquitectura xamarin - Nuestra primera app
Arquitectura xamarin - Nuestra primera app
Borja García Cueto
 
Desarrollo de Aplicaciones Metro en Windows 8
Desarrollo de Aplicaciones Metro en Windows 8Desarrollo de Aplicaciones Metro en Windows 8
Desarrollo de Aplicaciones Metro en Windows 8
Rodolfo Finochietti
 
DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!
Javier Suárez Ruiz
 
OpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller XamarinOpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller Xamarin
Javier Suárez Ruiz
 
Introducción a Xamarin.Forms
Introducción a Xamarin.FormsIntroducción a Xamarin.Forms
Introducción a Xamarin.Forms
Javier Suárez Ruiz
 
introducción a xamarin
  introducción a xamarin  introducción a xamarin
introducción a xamarin
Steven Nazareno Arroyo
 
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Javier Suárez Ruiz
 
Dev Days 1 - Introducción a Xamarin
Dev Days 1 - Introducción a XamarinDev Days 1 - Introducción a Xamarin
Dev Days 1 - Introducción a XamarinSergio Gasca García
 
Novedades visual studio 2015
Novedades visual studio 2015Novedades visual studio 2015
Novedades visual studio 2015
Francesc Jaumot
 
Women Who Code Bogota: Introduction to Xamarin Forms
Women Who Code Bogota: Introduction to Xamarin FormsWomen Who Code Bogota: Introduction to Xamarin Forms
Women Who Code Bogota: Introduction to Xamarin Forms
Leomaris Reyes
 
.NET Day Guatemala
.NET Day Guatemala.NET Day Guatemala
.NET Day Guatemala
Leomaris Reyes
 
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
Sorey García
 
WinObjC: Windows Bridge para iOS
WinObjC: Windows Bridge para iOSWinObjC: Windows Bridge para iOS
WinObjC: Windows Bridge para iOS
Javier Suárez Ruiz
 

Similar a Dev days 2 Xamarin Forms (20)

Introduction to .NET MAUI.pdf
Introduction to .NET MAUI.pdfIntroduction to .NET MAUI.pdf
Introduction to .NET MAUI.pdf
 
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
Back2Learn MSFT UCuenca - Desarrollo de apps móviles multiplataforma con Xam...
 
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.FormsTech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
Tech Club Asturias: Un vistazo al presente y futuro de Xamarin.Forms
 
Dev days 1 Introducción a Xamarin
Dev days 1 Introducción a XamarinDev days 1 Introducción a Xamarin
Dev days 1 Introducción a Xamarin
 
DotNetDom: El futuro de Xamarin
DotNetDom: El futuro de XamarinDotNetDom: El futuro de Xamarin
DotNetDom: El futuro de Xamarin
 
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptxCOECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
COECYS - Introducción al desarrollo de apps multiplataforma con Xamarin.pptx
 
Novedades de Xamarin 4
Novedades de Xamarin 4Novedades de Xamarin 4
Novedades de Xamarin 4
 
Arquitectura xamarin - Nuestra primera app
Arquitectura xamarin - Nuestra primera appArquitectura xamarin - Nuestra primera app
Arquitectura xamarin - Nuestra primera app
 
Desarrollo de Aplicaciones Metro en Windows 8
Desarrollo de Aplicaciones Metro en Windows 8Desarrollo de Aplicaciones Metro en Windows 8
Desarrollo de Aplicaciones Metro en Windows 8
 
DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!DotNet2018: Xamarin.Forms Everywhere!
DotNet2018: Xamarin.Forms Everywhere!
 
OpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller XamarinOpenSouthCode 2018: Taller Xamarin
OpenSouthCode 2018: Taller Xamarin
 
Introducción a Xamarin.Forms
Introducción a Xamarin.FormsIntroducción a Xamarin.Forms
Introducción a Xamarin.Forms
 
introducción a xamarin
  introducción a xamarin  introducción a xamarin
introducción a xamarin
 
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
Crear Apps móviles multiplataforma con Xamarin compartiendo la mayor cantidad...
 
Dev Days 1 - Introducción a Xamarin
Dev Days 1 - Introducción a XamarinDev Days 1 - Introducción a Xamarin
Dev Days 1 - Introducción a Xamarin
 
Novedades visual studio 2015
Novedades visual studio 2015Novedades visual studio 2015
Novedades visual studio 2015
 
Women Who Code Bogota: Introduction to Xamarin Forms
Women Who Code Bogota: Introduction to Xamarin FormsWomen Who Code Bogota: Introduction to Xamarin Forms
Women Who Code Bogota: Introduction to Xamarin Forms
 
.NET Day Guatemala
.NET Day Guatemala.NET Day Guatemala
.NET Day Guatemala
 
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
 
WinObjC: Windows Bridge para iOS
WinObjC: Windows Bridge para iOSWinObjC: Windows Bridge para iOS
WinObjC: Windows Bridge para iOS
 

Dev days 2 Xamarin Forms

  • 1.
  • 2.
  • 3.
  • 4. Enfoque tradicional Xamarin Con Xamarin.Forms iOS C# UI Windows C# UIAndroid C# UI Shared C# Backend Shared UI Code Shared C# Backend
  • 5. ✓ 40+ Pages, layouts, y controles (desde code behind o XAML) ✓ Two-way data binding ✓ Navegación ✓ Animation API ✓ DependencyService ✓ MessagingCenter Shared C# Backend Shared UI Code
  • 6. Layouts Pages Stack Absolute Relative Grid ContentView ScrollView Frame Content MasterDetail Navigation Tabbed Carousel
  • 7. ActivityIndicator BoxView Button DatePicker Editor Entry Image Label ListView Map OpenGLView Picker ProgressBar SearchBar Slider Stepper TableView TimePicker WebView EntryCell ImageCell SwitchCell TextCell ViewCell
  • 8. Permite la extensión de controles visuales añadiendo la funcionalidad inexistente. Se debe realizar cada extensión especifica por cada plataforma, con lo cual, se trabaja con código nativo Puedes reutilizar controles existentes de Xamarin Forms para no empezar desde 0.
  • 10. Nos abstraemos de la plataforma nativa para la navegación Navegación de pila como cualquier aplicación móvil
  • 11. Abstraídos también de la plataforma Todos los gestos “normales” dentro de una app móvil (Tap, Pinch, Pan) Se puede incluir dentro del XAML Puedes crear tus propios contenedores de gestos.
  • 12. Integrado nativamente en Xamarin Forms Dependency Service propio
  • 13. <?xml version="1.0" encoding="UTF-8"?> <TabbedPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="MyApp.MainPage"> <TabbedPage.Children> <ContentPage Title="Profile" Icon="Profile.png"> <StackLayout Spacing="20" Padding="20" VerticalOptions="Center"> <Entry Placeholder="Username" Text="{Binding Username}"/> <Entry Placeholder="Password" Text="{Binding Password}" IsPassword="true"/> <Button Text="Login" TextColor="White" BackgroundColor="#77D065" Command="{Binding LoginCommand}"/> </StackLayout> </ContentPage> <ContentPage Title="Settings" Icon="Settings.png"> <!-- Settings --> </ContentPage> </TabbedPage.Children> </TabbedPage>
  • 14.
  • 15.
  • 16.
  • 17.
  • 18. macOS Preview Mejoras en GestureRecognizers Android Support Libraries PlatformSpecifics Fast Scroll NavigationPage Translucency Blur Behind Partial Collapse MasterPage Native Control Binding Map Extensibility Fast Renderers Preview Startup Time ListView Scrolling Memory Improvements XAMLC Bindable Picker Frame Corners Tizen Forms Previewer FlexLayout Preview Xamarin.Forms Embedding DataPages
  • 20.
  • 21.
  • 22.
  • 23.

Notas del editor

  1. Inside of a page are layouts A lot of options from something simple like a stack panel to complex and powerful grids
  2. You have more than 40 controls, layouts, and pages to mix and match from. These are all of the controls you have out of the box, you can of course create your own. What is unique is you get the native control and have access to it. Consider an Entry Field On iOS it is mapped to UITextField Android it is EditText Windows Phone it is a TextBox
  3. Si tenemos una carencia dentro de nuestra aplicación de componentes. Podemos crear custom renders que son extensiones de distintos controles ya existentes.
  4. Can you believe it? It has been 1 year since Xamarin.Forms was opened sourced! And what a year!
  5. We have created a full public roadmap and crafting it with your help. Tons of merged PRs and tons of contributors! We love it!
  6. We have also added a plethora of amazing new features!
  7. When you want to get started you may not want to worry about emulators, sdks, and all the other over head of getting an app running. This is where the new Xamarin Live Player comes in, enabling you to continuously deploy, debug, and real time code your iOS and Android apps.
  8. All you do is create your code base, pair your device, and run your app! That is it from with VS Mac or VS 2017. Here is what it looks like in action.
  9. Just like that you can debug your app or “live run current view” and modify and update your UI in real time.