plain concepts tech day: desarrollo de aplicaciones multiplataforma con xamarin
TRANSCRIPT
![Page 1: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/1.jpg)
#PlainConceptsTechDay
20.12.2017
Plain Concepts
Tech Day
JAVIER SUÁREZ RUIZ
Desarrollo de aplicaciones
multiplataforma con Xamarin
XAMARIN TEAM LEAD
![Page 2: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/2.jpg)
#PlainConceptsTechDay2
9:00 – 9:45 CSS Grid Layout - ¡Se acabaron los hacks, larga vida al CSS!
9:45 - 10:30 Desarrollo de aplicaciones multiplataforma utilizando Xamarin
10:30 - 11:15 Docker: de principante a pro
11:15 - 11:25 ¿Qué es la Fundación Theodora?
11:25 - 11:45 Break
11:45 - 12:30 Los autobuses de madrid en tiempo real con Azure Relay, .Net Core y una Raspberry Pi
12:30 - 13:15 Swagger Code Generation: Cuando front encontró a back
13:15 - 14:00 Entrega contínua con Visual Studio Team Services
Plain
Concepts
Tech Day
![Page 3: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/3.jpg)
Qué veremos
#PlainConceptsTechDay 3
1. Introducción a Xamarin
2. ¿Cómo desarrollamos en Xamarin?
3. Próximas novedades
4. Tendencias
5. Preguntas y Respuestas
![Page 4: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/4.jpg)
Visual Studio Technologies & Windows Platform Development MVP
Xamarin MVP
Software Developer at Plain Concepts
Javier Suárez
@plainconcepts
#PlainConceptsTechDay4
@jsuarezruiz
DEVELOPER
![Page 5: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/5.jpg)
#PlainConceptsTechDay 5
Introducción a Xamarin
![Page 6: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/6.jpg)
Código nativo
iOS WindowsAndroid
Objective-C
Xcode
C#
Visual Studio
Java
Android Studio
No se comparte código • Diferentes lenguajes & entornos de desarrollo • Diferentes
equipos
![Page 7: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/7.jpg)
Escribe una vez, corre en todos
App Generator
Lua
Javascript
Actionscript
HTML+CSS
Acceso limitado a APIs • Menos rendimiento • Experiencia de usuario más pobre
![Page 8: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/8.jpg)
El enfoque de Xamarin
Código común compartido • Acceso 100% a APIs nativas • Alto rendimiento
iOS C# UI Windows C# UIAndroid C# UI
Shared C# Mobile
![Page 9: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/9.jpg)
Xamarin + Xamarin.Forms
Enfoque tradicional Con Xamarin.Forms:Más código compartido, nativo
iOS C# UI Windows C# UIAndroid C# UI
Shared C# Backend
Shared UI Code
Shared C# Backend
![Page 10: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/10.jpg)
El enfoque de Xamarin
Código común compartido • Acceso 100% a APIs nativas • Alto rendimiento
iOS C# UI Windows C# UIAndroid C# UI
Shared C# Mobile C# Server
Linux/Mono
CoreCLRAzure
Shared C# Client/Server
![Page 11: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/11.jpg)
Rendimiento nativo
Xamarin.iOS usa la compilación Ahead Of Time
(AOT) para crear un binario ARM para la
Apple’s App Store.
Xamarin.Android toma ventaja de la
compilación Just In Time (JIT) en
dispositivos Android.
![Page 12: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/12.jpg)
Open Source – open.xamarin.com
![Page 13: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/13.jpg)
Windows APIs
Microsoft.Phone Microsoft.Networking Windows.Storage Windows.Foundation Microsoft.Devices
System.Data System.Windows System.Numerics System.Core System.ServiceModel
System.Net System System.IO System.Linq System.Xml
![Page 14: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/14.jpg)
iOS – Acceso al 100% de las APIs
MapKit UIKit iBeacon CoreGraphics CoreMotion
System.Data System.Windows System.Numerics System.Core System.ServiceModel
System.Net System System.IO System.Linq System.Xml
![Page 15: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/15.jpg)
Android – Acceso al 100%de las APIs
Text-to-speech ActionBar Printing Framework Renderscript NFC
System.Data System.Windows System.Numerics System.Core System.ServiceModel
System.Net System System.IO System.Linq System.Xml
![Page 16: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/16.jpg)
Cualquier cosa que puedas hacer con Objective-C, Swift, o Java
se puede hacer con C# y Visual Studio con Xamarin.
![Page 17: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/17.jpg)
La clave, compartir
código
![Page 18: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/18.jpg)
LIBRARIES
INFRASTRUCTURE
.NET STANDARD
NET Standard.NET Standard permite
compartir código, recursos y
otros elementos entre
clientes .NET (y servidores).
• .NET Standard facilita una
específicación para cada
plataforma para que la
implementación sea
similar.
• Todos los runtime .NET
creados por Microsoft
están implemenentando el
standard.
![Page 19: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/19.jpg)
Pasamos a ver código, realizar pruebas, compilar, ejecutar, etc.
DEMO TIME
@plainconcepts
#PlainConceptsTechDay19
App Xamarin.Forms con NET Standard
![Page 20: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/20.jpg)
#PlainConceptsTechDay 20
¿Cómo desarrollamos en
Xamarin?
![Page 21: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/21.jpg)
Xamarin Live Player
![Page 22: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/22.jpg)
Xamarin Live Player
![Page 23: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/23.jpg)
Xamarin Live Player App
![Page 24: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/24.jpg)
Xamarin Live Player App
![Page 25: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/25.jpg)
Emparejando un dispositivo
![Page 26: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/26.jpg)
Vamos a ver como utilizar Live Player desde Visual Studio 2017.
A continuación, vamos a realizar cambios tanto de código XAML
como en la lógica de la aplicación para ver todos los cambios…al
vuelo!
DEMO TIME
@plainconcepts
#PlainConceptsTechDay26
Live Player
![Page 27: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/27.jpg)
Visual Studio
App Center
appcenter.ms
![Page 28: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/28.jpg)
Visual Studio App Center
![Page 29: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/29.jpg)
Visual Studio App Center
![Page 30: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/30.jpg)
HockeyApp iOS, Android, UWP
Visual Studio App Center
![Page 31: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/31.jpg)
Visual Studio App Center
![Page 32: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/32.jpg)
Visual Studio App Center
![Page 33: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/33.jpg)
Visual Studio App Center
![Page 34: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/34.jpg)
Builds, pruebas de UI, analíticas y mucho más!
DEMO TIME
@plainconcepts
#PlainConceptsTechDay34
Visual Studio App Center
![Page 35: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/35.jpg)
#PlainConceptsTechDay 35
Próximas novedades
![Page 36: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/36.jpg)
Xamarin.Forms: Nuevas plataformas
![Page 37: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/37.jpg)
Aplicación Xamarin.Forms disponible para todos los backends
disponibles incluidos aquellos en modo Preview.
DEMO TIME
@plainconcepts
#PlainConceptsTechDay37
La misma App en Android, iOS, UWP, Windows, macOS y Linux!
![Page 38: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/38.jpg)
Así es!. Vamos a ver una demo de Xamarin.Forms y el backend
Ooui utilizando ASP.net Core.
DEMO TIME
@plainconcepts
#PlainConceptsTechDay38
¿Xamarin.Forms y web?
![Page 39: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/39.jpg)
.NET Embedding en iOS + Android
![Page 40: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/40.jpg)
Xamarin.Forms Native Forms
![Page 41: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/41.jpg)
XAML StandardActualización de Xamarin.Forms, se alinea con UWP
● Nuevos tipos
○ TextBox, Border, ComboBox, ProgressRing, StackPanel,
TextBlock, ToggleSwitch, UserControl
● Nuevas propiedades
○ Foreground, Background, BorderBrush, BorderThickness, Value,
FontStyle, FontWeights, Orientation, Stretch, TextWrapping
Preview disponible: aka.ms/xf-xamlstandard
![Page 42: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/42.jpg)
#PlainConceptsTechDay 42
Tendencias
![Page 43: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/43.jpg)
REALIDAD AUMENTADA, MACHINE LEARNING, ELEMENTOS 3D Y MUCHO MÁS!
43
• Aplicaciones nativas con interfaces atractivas y adaptadas a
cada plataforma.
• Rendimiento nativo.
• Machine Learning.
• Realidad aumentada.
¿Qué se esperará de las próximas grandes aplicaciones móviles?
TENDENCIAS
![Page 44: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/44.jpg)
Realidad aumentada
@plainconcepts
#PlainConceptsTechDay44
Xamarin da soporte tanto a
ARKit (iOS) como a ARCore
(Android).
Contamos con posibilidades
como seguimiento de
movimiento, detección de plano
y estimación de la luz.
![Page 45: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/45.jpg)
#PlainConceptsTechDay 45
¿Preguntas?
![Page 46: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/46.jpg)
¡Estamos
CONTRATANDO!
46
int ledPin = 13;
void setup()
{ pinMode(ledPin, OUTPUT);
}
void loop(){ digitalWrite(ledPin, HIGH);
delay(1000); digitalWrite(ledPin, LOW);
delay(1000);
}
@plainconcepts
#PlainConceptsTechDay
www.plainconcepts.com/careers
![Page 47: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/47.jpg)
¡GRACIAS!www.plainconcepts.com
@plainconcepts
![Page 48: Plain Concepts Tech Day: Desarrollo de aplicaciones multiplataforma con Xamarin](https://reader031.vdocuments.us/reader031/viewer/2022021416/5a64b3b67f8b9ac86f8b461b/html5/thumbnails/48.jpg)
www.plainconcepts.com
MADRID
Paseo de la Castellana 163, 10º
28046 Madrid. España
T. (+34) 91 5346 836
BILBAO
Calle Ledesma 10-bis 3º
48001 Bilbao. España
T. (+34) 94 6073 371
BARCELONA
Carrer Compte d’Urgell 240 4º A
08036 Barcelona. España
T. (+34) 93 7978 566
SEVILLA
Avenida de la innovación s/n
Edificio Renta Sevilla, 3º A
41020 Sevilla. España
T. (+34) 600 58 75 43
DUBAI
Dubai Internet City. Building 1
73030 Dubai. EAU
T. (+971) 4 551 6653
LONDON
Impact Hub Kings Cross
24B York Way, N1 9AB
London. UK
SEATTLE
8201 164th Ave NE
Redmond, WA 98052
Washington
T. (+1) 206 708 1285