tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination...

27
Innovative Mobile Applications Übung 2

Transcript of tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination...

Page 1: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Innovative Mobile Applications

Übung 2

Page 2: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Agenda

  Organisation mit Visual Studio Online

  Projekt – Funktionalität und Code

  C# im Vergleich zu Java

  Native Funktionalität mittels Xamarin

Page 3: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Visual Studio Online

Setup:

•  Anmeldung mit Live-ID

•  Account-URL erstellen

•  Team-Mitglieder zufügen

Page 4: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Visual Studio Online

Backlog:

•  Ort an dem eine Prioritätenliste

der Anforderungen gehalten wird

•  Repository aller Informationen

Page 5: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Visual Studio Online

Scrum:

•  Sprints mit gefilterten

Anforderungen für die Dauer eines Arbeitsschrittes

Page 6: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Visual Studio Online

To-Do auf Board anlegen:

Page 7: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Visual Studio Online

Kapazitäten zuweisen:

Page 8: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Visual Studio Einbindung

Page 9: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Visual Studio Online

Page 10: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Visual Studio Online

Chat-Room:

Page 11: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Code-Demo

Page 12: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

C# und Java im Vergleich

C# Java

Entwickler: Microsoft Sun Microsystems

Art: objektorientiert

objektorientiert

Laufzeit-umgebung

.NET (CIL) JRE (Bytecode)

Page 13: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

C# und Java im Vergleich

C# Java

Typisierung: stark, statisch, klassenbasiert

stark, statisch, klassenbasiert

Pointer ja

nein

Versionierung ja nein

Page 14: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

C# Typsysteme

Quelle: Hanspeter Mössenböck – Universität Potsdam

Page 15: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

C# und Java Codebeispiel

Fibonacci Sequenz in Java:

Page 16: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

C# und Java Codebeispiel

Fibonacci Sequenz

in C# :

Page 17: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Zusammenfassung

Pro C#:

•  Mächtiger (Structs, Referenzparameter)

•  Bequemer (Indexer, foreach)

•  Flexibler (erlaubt Systemprogrammierung)

•  Besser unter Windows

Page 18: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Zusammenfassung

Pro Java:

•  Kleiner und einfacher

•  Größere Verbreitung

•  Strikter (kein Unsafe Code)

•  Portabler

Page 19: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

IDE für C#

}

Page 20: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Xamarin

Native Programmierung für Android, iOS, Windows und Mac mit C#

Page 21: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Xamarin Studio

Standalone IDE für mobile App-Entwicklung (erhältlich für Windows und Mac)

Mächtige IDE für zahlreiche Hochsprachen (nur Windows)

Enthält Xamarin.Android, Xamarin.iOS und Xamarin.Mac (nicht Windows Phone)

In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Page 22: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Xamarin

Page 23: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Xamarin.Forms

•  Applikation (inkl. GUI) muss nur 1x entwickelt werden

•  Xamarin.Forms.Button à UIButton (iOS) à AndroidButton (Android) à WindowsPhoneButton (Windows)

•  Unterschiede der Plattformen per Default eingebaut

Page 24: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Shared Code

Page 25: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Shared Project

Shared – Shared Project enthält Code den alle Projekte gemeinsam haben

TaskyAndroid – Xamarin.Android application project

TaskyiOS – Xamarin.iOS application project

Page 26: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Compiler Directives

  Sollten Unterscheidungen für eine spezielle Plattform notwendig sein, wird häufig eine Kompiler-Direktive verwendet

Page 27: tions - uni-muenchen.de€¦ · Xamarin.iOS und Xamarin.Mac (nicht Windows Phone) In Kombination mit Xamarin for VS möglich Apps für Android, iOS und Windows Phone in C# zu schreiben

Danke für die Aufmerksamkeit

Praktikum Innovative Mobile Applications, Übung 2 Schaperai Badri, Sandro Kurpiers, David Rasch, Simon Weiser