Interview mit Jörg Neumann (Acando/Thinktecture AG)

Windows 10: Cross-Device Development mit Adaptive UI
Kommentare

Mit Windows 10 ist das Cross-Device-Konzept endlich erwachsen geworden. Microsoft hat ein einheitliches App-Modell für Smartphone, Tablet und Desktop geschaffen. Doch mit den neuen Möglichkeiten ergeben sich auch neue Herausforderungen für Entwickler – welche das sind und wie man sie bewältigen kann, hat uns Jörg Neumann im Interview verraten.

Mit Windows 10 werden nur noch ein Code und ein App-Paket benötigt, damit Entwickler ihre App auf vielen verschiedenen Geräten mit jeweils eigener Bildschirmgröße ausführen können. Der Gewinn ist eine größere Reichweite für Entwickler und mehr Komfort für den Anwender. Allerdings wachsen mit den neuen Möglichkeiten auch die Herausforderungen. Mit genau dieser Thematik beschäftigt sich Jörg Neumann (Acando/Thinktecture AG) in seiner Session Cross-Device Development mit Windows 10  auf dem .NET Summit 2016.

Eine der Hürden von Microsofts einheitlichem App-Modell ist die Gestaltung der Oberfläche für unterschiedliche Displaygrößen. Microsofts Lösung hierfür ist das sogenannte Adaptive UI: Was verbirgt sich hinter diesem Konzept?

Jörg Neumann: Hierbei geht Microsoft einen zweigleisigen Weg: Zum einen können einzelne Screens mithilfe von Visual-States und Triggern sehr leicht auf unterschiedliche Auflösungen angepasst werden. Zum anderen ist es möglich, bestimmte Seiten der App separat zu entwickeln. Zur Laufzeit wird daraufhin die passende Seite für das entsprechende Device ausgewählt. Die Seiten liegen hierbei in bestimmten Unterordnern, deren Namen auf das Device schließen lassen.

Elegante und performante Web-APIs und MVC-Anwendungen mit ASP.NET Core 2.0

Dr. Holger Schwichtenberg (www.IT-Visions.de/5Minds IT-Solutions)

JavaScript Days 2017

Architektur mit JavaScript

mit Golo Roden (the native web)

JavaScript Testing in der Praxis

mit Dominik Ehrenberg (crosscan) und Sebastian Springer (MaibornWolff)


Was sind die Vor- und Nachteile bei der Gestaltung eines adaptiven UIs?

Neumann: Grundsätzlich ist es immer einfacher, für ein bestimmtes Zielgerät zu entwickeln. Hier spielt vor allem die ideale Platzausnutzung eine Rolle. Also zum Beispiel die Frage, wie viele Elemente bei einer bestimmten Auflösung nebeneinander bzw. untereinander passen. Bei adaptiven UIs arbeitet der Entwickler hingegen eher mit Schwellwerten, die für bestimmte Geräteklassen und nicht für einzelne Geräte gelten. Die Schwierigkeit ist hierbei die richtige Balance zwischen Platzausnutzung auf der einen und der Abdeckung möglichst vieler Geräte auf der anderen Seite zu finden.

Aus eigener Projekt-Erfahrung, welche Tipps würdest du zur richtigen Umsetzung geben?

Neumann: Bevor die Entwicklung beginnt, macht es Sinn, erst einmal ein Storyboard zu entwerfen. Hierin wird das grundlegende Design sowie der Flow der App beispielhaft abgebildet. Diese Abstraktion macht den Entwurfsprozess wesentlich leichter, da es hierbei zunächst nicht um die Technik geht.

Das Storyboard hilft zudem in der Abstimmung mit dem Kunden, sowie bei der späteren Implementierung. Ein weiterer Punkt ist die klare Bestimmung der Zielgeräte bzw. Geräteklassen. Auf diese Weise kann von vorneherein geplant werden, welche Screens „adaptive“ entwickelt werden und welche dediziert für eine bestimmte Geräteklasse entworfen werden müssen.

Um eine hohe Reichweite zu erzielen, sollten Apps bestenfalls nicht nur geräte- sondern plattformübergreifend entwickelt werden. So müssen zum Beispiel für alle Plattformen andere Programmiersprachen und APIs erlernt werden. Wie kann Xamarin hier helfen? 

Neumann: Xamarin.Forms ist eine elegante Lösung für die plattformübergreifende App-Entwicklung. Da es XAML für die Oberflächengestaltung bietet, ist eine einheitliche Gestaltung der Screens möglich, ohne auf die Besonderheiten der unterschiedlichen Plattformen eingehen zu müssen. Denn gerade in diesem Bereich sind die Unterschiede am größten.

Zudem muss die Logik nur ein einziges Mal in C# entwickelt werden und nicht dediziert für jede Plattform in unterschiedlichen Programmiersprachen. Das mindert die Komplexität der Cross-Plattform-Entwicklung und bietet im Ergebnis native Apps für alle Plattformen.

 

Aufmacherbild: Responsive web design von Shutterstock / Urheberrecht: Ira Yapanda

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -