Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Cross-platform mobile development using C# and Xamarin Forms

Cross-platform mobile development using C# and Xamarin Forms

This is a simple introduction to cross-platform mobile development using C# and Xamarin Forms.

Runar Ovesen Hjerpbakk

February 06, 2019
Tweet

More Decks by Runar Ovesen Hjerpbakk

Other Decks in Programming

Transcript

  1. E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Cross-platform mobile development using C# and Xamarin Forms Runar Ovesen Hjerpbakk https://hjerpbakk.com @hjerpbakk
  2. E N A B L I N G E F

    F I C I E N T H E A L T H C A R E § Motivation § Why Xamarin? § How Xamarin? § Patterns and practices – Code sharing through standard libraries – SOLID – MVVM – ValueConverters – Dependency Injection – Testing Agenda
  3. E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Norwegian market share
  4. E N A B L I N G E F

    F I C I E N T H E A L T H C A R E § Native § Using webviews (Cordova, PhoneGap, Ionic) § Native with different languages (Xamarin, React Native) 3 popular approaches
  5. E N A B L I N G E F

    F I C I E N T H E A L T H C A R E § Wikipedia: «C# is a multi-paradigm programming language encompassing strong typing, imperative, declarative, functional, generic, object- oriented (class-based), and component- oriented programming disciplines.» § Runar Ovesen Hjerpbakk: «C# ligner på Java, alt er bare bedre.» C#
  6. E N A B L I N G E F

    F I C I E N T H E A L T H C A R E .Net
  7. E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Traditional UI approach 3 Native User Interfaces Shared App Logic iOS C# Windows C# Android C# Shared C# Logic
  8. E N A B L I N G E F

    F I C I E N T H E A L T H C A R E 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. .NET C# Compile and Link .APK Bindings Runs Natively IL + JIT
  9. E N A B L I N G E F

    F I C I E N T H E A L T H C A R E Xamarin.Forms approach Shared User Interface Shared App Logic Shared C# Logic Shared UI Code
  10. E N A B L I N G E F

    F I C I E N T H E A L T H C A R E
  11. E N A B L I N G E F

    F I C I E N T H E A L T H C A R E