O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Xamarin Hack Day - Sydney 2016 - Introduction to Xamarin

306 visualizações

Publicada em

Slide from the Sydney Xamarin Hack Day 2016 with a basic introduction to Xamarin.

Publicada em: Tecnologia
  • Entre para ver os comentários

  • Seja a primeira pessoa a gostar disto

Xamarin Hack Day - Sydney 2016 - Introduction to Xamarin

  1. 1. www.xam-consulting.com www.michaelridland.com Welcome Xamarin Hack Day Sydney 2016
  2. 2. www.xam-consulting.com www.michaelridland.com Agenda 9:00 - Presentations & Challenges Michael Ridland - Introduction to Xamarin Matthew Robbins - Costs and Benefits Compiled Xaml Jernej Kavka - Code Sharing 10:30 - Challenges / Install-Fest / Mini-Hacks / Open Hacking 1:00 - Lunch 1:30 - Challenges / Install-Fest / Mini-Hacks / Open Hacking 4:30 - Show and Tell - Show something you’ve built or learnt
  3. 3. www.xam-consulting.com www.michaelridland.com How you hack is up to you!  Presenters will set challenges  You can do any of the challenges  or work on your own stuff  mentors will be available to assist
  4. 4. www.xam-consulting.com www.michaelridland.com Michael Ridland www.michaelridland.com
  5. 5. www.xam-consulting.com www.michaelridland.com Mobile Technology Specialists
  6. 6. www.xam-consulting.com www.michaelridland.com Thanks to our sponsors
  7. 7. www.xam-consulting.com www.michaelridland.com Thanks to our Mentors and Presenters
  8. 8. www.xam-consulting.com www.michaelridland.com Introduction to Xamarin
  9. 9. www.xam-consulting.com www.michaelridland.com What is native?
  10. 10. www.xam-consulting.com www.michaelridland.com The Anatomy of a Native App Native User Interfaces Native API Access Native Performance
  11. 11. www.xam-consulting.com www.michaelridland.com Xamarin’s (Traditional) Approach Native With Code Sharing
  12. 12. www.xam-consulting.com www.michaelridland.com Language Support Functional Imperative/OOP F# C#
  13. 13. www.xam-consulting.com www.michaelridland.com Base Class Libraries
  14. 14. www.xam-consulting.com www.michaelridland.com Windows APIs
  15. 15. www.xam-consulting.com www.michaelridland.com iOS APIs | 100% Coverage
  16. 16. www.xam-consulting.com www.michaelridland.com Android APIs | 100% Coverage
  17. 17. www.xam-consulting.com www.michaelridland.com Anything you can do in Objective-C or Java can be done in C# or F# with Xamarin Pro Tip
  18. 18. www.xam-consulting.com www.michaelridland.com Native Performance Xamarin.iOS does full Ahead Of Time (AOT) compilation to produce an ARM binary for Apple’s App Store. Xamarin.Android takes advantage of Just In Time (JIT) compilation on the Android device.
  19. 19. www.xam-consulting.com www.michaelridland.com Demos - Xamarin Traditional Demos
  20. 20. www.xam-consulting.com www.michaelridland.com Always Up To Date Same day support for iOS 5, iOS 6, iOS 6.1, iOS 7, iOS 7.1, iOS 8…
  21. 21. www.xam-consulting.com www.michaelridland.com Future Proof Always up-to-date with the latest APIs from Apple and Google. Full Support for Android TV, Fire TV, Android Wear, Google Glass, etc
  22. 22. www.xam-consulting.com www.michaelridland.com Rich Library EcoSystem Json.NET Rx …and many more!
  23. 23. www.xam-consulting.com www.michaelridland.com Development Environments
  24. 24. www.xam-consulting.com www.michaelridland.com Development Environment Xamarin Studio PC or Mac Visual Studio Plugin VS 2010/2012/2013
  25. 25. www.xam-consulting.com www.michaelridland.com Development Environment or even?
  26. 26. www.xam-consulting.com www.michaelridland.com Visual Studio Integration
  27. 27. www.xam-consulting.com www.michaelridland.com Android Designer
  28. 28. www.xam-consulting.com www.michaelridland.com iOS Designer Fully integrated into Xamarin Studio & Visual Studio iOS 6 & 7 Storyboard support Intuitive event handling Support for auto-layout Live preview of custom controls
  29. 29. www.xam-consulting.com www.michaelridland.com Component Store
  30. 30. www.xam-consulting.com www.michaelridland.com Component Vendors
  31. 31. www.xam-consulting.com www.michaelridland.com Xamarin.Forms
  32. 32. www.xam-consulting.com www.michaelridland.com Xamarin.Forms Xamarin.FormsTraditional Xamarin approach Shared UI Code
  33. 33. www.xam-consulting.com www.michaelridland.com Xamarin.Forms: What’s Included?  40+ Pages, Layouts, and Controls  Build from code or XAML  Two-way Data Binding  Navigation  Animation API  Dependency Service  Messaging Center
  34. 34. www.xam-consulting.com www.michaelridland.com Xamarin.Forms: Pages Content MasterDetail Navigation Tabbed Carousel
  35. 35. www.xam-consulting.com www.michaelridland.com Xamarin.Forms: Layouts Stack Absolute Relative Grid ContentView ScrollView Frame
  36. 36. www.xam-consulting.com www.michaelridland.com Xamarin.Forms: Controls ActivityIndicator BoxView Button DatePicker Editor Entry Image Label ListView Map OpenGLView Picker ProgressBar SearchBar Slider Stepper TableView TimePicker WebView EntryCell ImageCell SwitchCell TextCell ViewCell
  37. 37. www.xam-consulting.com www.michaelridland.com Xamarin.Forms Real World Tips
  38. 38. www.xam-consulting.com www.michaelridland.com Beware……  Forms is easy…  Easy is also deceptively simple…..
  39. 39. www.xam-consulting.com www.michaelridland.com Beware…… I hate Xamarin.Forms
  40. 40. www.xam-consulting.com www.michaelridland.com Beware……  Your still on a phone with limited resources…  Forms Xaml is not like WPF, Xamarin don’t own the underlying platforms  With Forms you must build pages with Performance in mind…
  41. 41. www.xam-consulting.com www.michaelridland.com Performance Tips  Reduce nesting  StackLayouts encourage nesting  Grid are great for reducing nesting  Avoid relative layout  Reduce layout cycles  Grids with Star and Static Height avoid layout cycles
  42. 42. www.xam-consulting.com www.michaelridland.com Xamarin.Forms Power Controls
  43. 43. www.xam-consulting.com www.michaelridland.com Grid Not difficult to use (nearly as easy as StackLayout) Works well with XAML (unlike relative) Can be used to create overlays/advanced UIs Easy to reduce nesting Easy to reduce layout cycles (Star and Static Widths/Heights)
  44. 44. www.xam-consulting.com www.michaelridland.com ListView with Cell Recycling  Much faster now with Cell Recycling  Use the DataTemplateSelector for different cell styles  Alternative to Grid when there’s a dynamic numbers of rows  Avoid add/remove views when binding context change
  45. 45. www.xam-consulting.com www.michaelridland.com Images on Android (especially in list)  Performance and Memory Issues  Use FFImageLoader  Image Caching  Image Resizing  If the Image is local, it can still have issues in lists. We sometimes do a full custom renderer native cell for Android only.
  46. 46. www.xam-consulting.com www.michaelridland.com Xamarin.Forms Real Apps
  47. 47. www.xam-consulting.com www.michaelridland.com File -> New
  48. 48. www.xam-consulting.com www.michaelridland.com Today’s Challenge  Build a view (maybe from http://snppts.io/latest or dribble)  It can be simplified or adapted depending on your experience  Improve the performance  http://kent-boogaart.com/blog/jason-smith's-xamarin-forms-performance- tips  https://evolve.xamarin.com/session/56e205b0bad314273ca4d817  https://developer.xamarin.com/guides/xamarin- forms/deployment,_testing,_and_metrics/performance/
  49. 49. www.xam-consulting.com www.michaelridland.com Q & A Michael Ridland michael@michaelridland.com @rid00z www.michaelridland.com

×