cross-platform mobile development mit xamarin …...xamarin.android / xamarin.ios / win 10...

38
Digicomp Microsoft Evolution Day 2015 1 Cross-Platform Mobile Development mit Xamarin Mark Allibone, @mallibone Partner:

Upload: others

Post on 25-May-2020

15 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

Digicomp Microsoft Evolution Day 2015 1

Cross-Platform Mobile Development mit Xamarin

Mark Allibone, @mallibone

Partner:

Page 2: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

2Digicomp Microsoft Evolution Day 2015

Vorstellung Referent

Mark AlliboneNoser Engineering AG

Passionierter Mobile Entwickler:

Xamarin Certified Mobile Developer MCSD Microsoft Ambassador

@mallibonehttps://mallibone.com

Page 3: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

3Digicomp Microsoft Evolution Day 2015

Agenda

Cross Plattform Apps

Xamarin

Xamarin.Forms

Windows und Xamarin

Apps und Application Lifecycle Managment

Agenda

Page 4: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

4Digicomp Microsoft Evolution Day 2015

Apps sind überall

Page 5: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

5Digicomp Microsoft Evolution Day 2015

Apps vs. Webseiten

Quelle: INMwww.inm.ch

Page 6: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

6Digicomp Microsoft Evolution Day 2015

Sehr performant

Bekanntes Benutzererlebnis

Kostenfaktor: mehrere Plattform-spezifische Teams zu haben.

Teurer Unterhalt

Koordinationsaufwand

Ausbremsen von Innovation

Der Silo-Ansatz: App mehrmals kreieren

Page 7: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

7Digicomp Microsoft Evolution Day 2015

Läuft auf allen Plattformen

HTML, CSS und JS

API-Zugriff ist eingeschränkt

Performance abhängig von der JS Runtime

Komplexere Applikationen benötigen oft Experten der jeweiligen technischen Domäne

Der Write-Once-Run-Everywhere-Ansatz

Page 8: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

Digicomp Microsoft Evolution Day 2015

Xamarin-Lösung

Page 9: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

9Digicomp Microsoft Evolution Day 2015

Der Xamarin-Ansatz: Wiederverwendbarer Code

Page 10: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

Digicomp Microsoft Evolution Day 2015 10

Demo

Page 11: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

11Digicomp Microsoft Evolution Day 2015

Page 12: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

12Digicomp Microsoft Evolution Day 2015

Xamarin.iOS vollzieht eine komplette «AheadOf Time (AOT)»-Kompilation und produziert dabei ein ARM binary für den Apple App Store.

Xamarin.Android setzt auf die Vorteile von «Just In Time (JIT)»-Kompilation auf der Android Platform.

Native Apps mit nativer Performance

Page 13: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

13Digicomp Microsoft Evolution Day 2015

Natives User Interface

Apps werden mit

plattformüblichen, nativen UI-

Elementen erstellt und erlauben so

ein einfaches bzw. bekanntes

Benutzererlebnis.

Vollständiger API-Zugriff

Apps haben Zugriff auf die gesamte

API der jeweiligen Platform und des

Geräts.

Native Performance

Apps setzen auf die Vorteile von

Plattform-spezifischen Hardware-

Beschleunigungen. Sie werden zu

nativen Apps kompiliert und werden

nicht erst zu Laufzeit interpretiert.

1

2

3

Xamarin ist auf allen 3 Ebenen nativ

Page 14: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

14Digicomp Microsoft Evolution Day 2015

Page 15: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

15Digicomp Microsoft Evolution Day 2015

Alles was mit Objective-C, Swift oder Java möglich ist,kann mit C# und Visual Studio mit Xamarin realisiert werden

Page 16: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

Xamarin erlaubt, es voll native Apps bzw. UIs zu

erstellen für iOS, Android und Windows

Page 17: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

17Digicomp Microsoft Evolution Day 2015

Xamarin-Grob-Architektur

Cross Plattform UI

Page 18: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

Digicomp Microsoft Evolution Day 2015

Xamarin-Forms

Page 19: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

19Digicomp Microsoft Evolution Day 2015

Geteilte UI in C# oder XAML

Geteilte App-Logik in C#

Integration von Plattform-spezifischem Code

Gut geeignet für Formular-basierte Applikationen

Einfach zu erlernende API

Xamarin-Forms-Übersicht

Shared App Logic

Xamarin.Forms

Page 20: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

Digicomp Microsoft Evolution Day 2015 20

Demo

Page 21: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

21Digicomp Microsoft Evolution Day 2015

Xamarin.Forms aus eins mach drei

Page 22: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

22Digicomp Microsoft Evolution Day 2015

40 UI Controls

Native Controls

Inkl. einfacher Animationen

Xamarin-Forms UI

Page 23: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

23Digicomp Microsoft Evolution Day 2015

Erweiterung von bestehenden Controls

Definieren und Hinzufügen von eigenen Controls, Layouts, Pages und Zellen

Kreieren und Verwenden Sie Ihre eigenen Plattform-spezifischen Controls in Xamarin-Forms

Xamarin-Forms-Erweiterbarkeit

Page 24: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

24Digicomp Microsoft Evolution Day 2015

Xamarin-Forms im Vergleich

Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms

iOS C# UI Android C# UI Windows C# UI

Shared App Logic Shared App Logic

Xamarin.Forms

Page 25: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

Digicomp Microsoft Evolution Day 2015

Windows 10

Page 26: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

26Digicomp Microsoft Evolution Day 2015

Universal Windows Plattform

Page 27: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

27Digicomp Microsoft Evolution Day 2015

Ähm…

Page 28: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

Digicomp Microsoft Evolution Day 2015 28

Demo

Page 29: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

29Digicomp Microsoft Evolution Day 2015

Windows 10, 8, 7 und Xamarin

Page 30: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

30Digicomp Microsoft Evolution Day 2015

Microsoft- und Xamarin-Partnerschaft

+ =Auf 2.6 Milliarden Devices

Page 31: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

Digicomp Microsoft Evolution Day 2015

Application Lifecycle

Management

Page 32: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

32Digicomp Microsoft Evolution Day 2015

Big Picture - Mobile Entwicklung

Design Develop Integrate Test Monitor

Xamarin Platform

Page 33: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms
Page 34: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

34Digicomp Microsoft Evolution Day 2015

Xamarin Testcloud

Page 35: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

35Digicomp Microsoft Evolution Day 2015

Big Picture - Mobile Entwicklung

Design Develop Integrate Test Monitor

Xamarin Platform

Page 36: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

36Digicomp Microsoft Evolution Day 2015

Analyse von Crash Reports

Detaillierte pre-crash Reports

Tracking von Benutzerstatistiken

Page 37: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

37Digicomp Microsoft Evolution Day 2015

Big Picture - Mobile Entwicklung

Design Develop Integrate Test Monitor

Xamarin Platform

Training/Know-how

Page 38: Cross-Platform Mobile Development mit Xamarin …...Xamarin.Android / Xamarin.iOS / Win 10 Xamarin.Forms iOS C# UI Android C# UI Windows C# UI Shared App Logic Shared App Logic Xamarin.Forms

38Digicomp Microsoft Evolution Day 2015

Weiterführende Kurse

Mobile-Cross-Platform-Entwicklung mit Xamarin («XAM»)

3 Tage

CHF 2’400.-

Nächster Termin: 9. bis 11. November 2015

https://www.digicomp.ch/weiterbildung/softwareentwicklung/microsoft-net/mobile-app-entwicklung-mit-net/mobile-cross-platform-entwicklung-mit-xamarin