Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Xamarin forms en el mundo real

3,013 views

Published on

Charla inaugural del grupo Xamarin madrid, hablando sobre cuando y como usar Xamarin.Forms en escenarios reales.

Published in: Mobile

Xamarin forms en el mundo real

  1. 1. Xamarin.Forms en el mundo real Yeray Julián Founder &Tech Leader @ DevsDNA jyeray@devsdna.com @josueyeray @devsdna
  2. 2. Xamarin Forms es un Framework que nos permite crear apps nativas para iOS, Android y Windows desde Visual Studio y con C# ¿Por que es distinto al resto de frameworks? ¿Que es Xamarin Forms?
  3. 3. V1.5 estable Android 4.0+ iOS 6.0+ Windows Phone 8 Silverlight Windows Phone 8.1 WinRT Windows 8.1 WinRT ¿Que es Xamarin Forms?
  4. 4. Private beta (vNext) Android 4.0+ iOS 6.0+ Windows Phone 8 Silverlight Windows Phone 8.1 WinRT Windows 8.1 WinRT Windows 10 UWP ¿Que es Xamarin Forms?
  5. 5. Enfoque actual para el desarrollo de apps móviles nativas
  6. 6. Objective-C Swift Java C++ C# C++ REPETIR ELTRABAJO
  7. 7. XAMARIN Compartir código... ...pero sin abandonar las peculiaridades
  8. 8. XAMARIN CLASSIC
  9. 9. XAMARIN FORMS Shared UI Code C#/XAML
  10. 10. Stack Absolute Relative Grid ContentView ScrollView Frame Layouts
  11. 11. Controles ActivityIndicator BoxView Button DatePicker Editor Entry Image Label ListView Map OpenGLView Picker ProgressBar SearchBar Slider Stepper TableView TimePicker WebView EntryCell ImageCell SwitchCell TextCell ViewCell
  12. 12. Ejemplo, DatePicker
  13. 13. ¿Como funciona Xamarin.Forms? SharedView XAML/C# Real time rendering engine Shared Logic C#
  14. 14. Xamarin Inspector
  15. 15. ¿Dónde usar Xamarin Forms?
  16. 16. ¿La función principal de tu aplicación es la entrada de datos? ¿Estas construyendo un prototipo o una prueba de concepto? ¿La reutilización de código es mas importante que el diseño al pixel o el rendimiento? Diseño que se aparta del standard Muy personalizado Guias de diseño muy estrictas Rendimiento muy ajustado NO NO NO Xamarin Forms Xamarin Classics ¿Dónde usar Xamarin Forms?
  17. 17. ¿Donde no usar Xamarin.Forms? Foto: Santiago Porras tras un día de desarrollo con Xamarin.Forms
  18. 18. Donde no usar Xamarin.Forms No es una bala de plata. Interfaz muy compleja = Custom Renders XAML interpretado en runtime Controles limitados en funcionalidad (maps) Xforms tiene sentido si nos ahorramos trabajo Custom Renders, Behaviors, Custom controls hacen que pierda su efectividad
  19. 19. Donde no usar Xamarin.Forms ¿Necesitas modificar la apariencia de los controles? ¿Necesitas usar degradados muy a menudo? ¿Necesitas poder atacar a los controles de forma nativa? ¿Quieres incluir muchas animaciones en tu UI? ¿El rendimiento es una preocupación? ¿Tu TTM es menos importante que la exactitud gráfica? Si la respuesta a estas preguntas es SI, no uses Xamarin.Forms
  20. 20. Ejemplo real – MyEncamina
  21. 21. Ejemplo real – Usando Xamarin.Forms App interna de control de incidencias iOS/Android Mantenimiento rápido Poco evolutivo funcional
  22. 22. Ejemplo real – Usando Xamarin.Forms
  23. 23. Ejemplo real – Usando Xamarin.Forms
  24. 24. Ejemplo real – Usando Xamarin.Forms <ListView x:Name="userListView" ItemsSource="{Binding FilteredUserList}" SelectedItem="{Binding SelectedUser,Mode=TwoWay}" SeparatorColor="Black" Grid.Row="1"> <ListView.ItemTemplate> <DataTemplate> <ViewCell> <StackLayout Orientation="Horizontal" HorizontalOptions="StartAndExpand"> <Label x:Name="labelCellFirstName“ Text="{Binding FirstName}"></Label> <Label x:Name="labelCellLastName“ Text="{Binding LastName}"></Label> <Image VerticalOptions="Center“ Source="Edit.png"/> </StackLayout> </ViewCell> </DataTemplate> </ListView.ItemTemplate> </ListView>
  25. 25. Ejemplo real – No usando Xamarin.Forms App pública de video sharing iOS, Android, Windows Branding muy potente en todas las plataformas Controles muy personalizados Casi nada tiene apariencia por defecto Mantenimiento muy planificado Gran evolutivo funcional
  26. 26. Ejemplo real – No usando Xamarin.Forms
  27. 27. Muchas gracias por asistir. ¿preguntas? Yeray Julián Founder &Tech Leader @ DevsDNA jyeray@devsdna.com @josueyeray @devsdna

×