Not logged in.

Contribution Details

Type Master's Thesis
Scope Discipline-based scholarship
Title Elemental UI: Portable and performant solution for modern GUI rendering
Organization Unit
Authors
  • Luka Lapanashvili
Supervisors
  • Harald Gall
  • Pasquale Salza
Language
  • English
Institution University of Zurich
Faculty Faculty of Business, Economics and Informatics
Date 2021
Abstract Text Interacting with software is commonplace in modern society. Music, video, images, and text are routinely consumed on smartphones, laptops, smart wearables, stationary workstations, and embedded devices. Simultaneously, the number of network-enabled devices per person rises, which increases the demand for the preferred media playback software or the social media application to be available on any device in such a way that a podcast paused on a laptop can be resumed on a smartphone. However, rarely is it possible to use the same frontend code or even the same programming language to create an application that can be run on different devices. Application developers often have to adapt implementations for every single platform or even write bespoke implementations for individual operating systems. Naturally, such a fragmented codebase is difficult to maintain and to uphold feature parity across all the devices. Having one unified solution, where one codebase can target a large set of devices, would be highly beneficial. In this thesis, we discuss the difficulties of developing a cross-platform application and evaluate available solutions. Finally, we introduce Elemental UI, our cross-platform solution for modern GUI application development, and discuss its strengths and shortcomings compared to other established frameworks.
Zusammenfassung Die Interaktion mit Software ist in der modernen Gesellschaft alltäglich. Musik, Video, Bild und Text werden regelmässig auf Smartphones, Laptops, Smart-Wearables, Arbeitsplatzrechnern und Embedded-Devices konsumiert. Gleichzeitig steigt die Anzahl der netzwerkfähigen Geräte pro Person, wobei die Anforderung immer grösser wird, dass die bevorzugte Wiedergabesoftware oder die Social-Media-Anwendung auf jedem Gerät verfügbar sein muss, sodass ein auf dem Laptop pausierter Podcast auf dem Smartphone fortgesetzt werden kann. Allerdings ist es selten möglich den gleichen Frontend-Code oder sogar die gleiche Programmiersprache zu benutzen, um eine Anwendung zu entwickeln, welche auf verschiedenen Geräten ausgeführt werden kann. Entwickler müssen ihre Implementierungen oft für jede einzelne Plattform anpassen oder sogar massgeschneiderte Lösungen für einzelne Betriebssysteme schreiben. Verständlicherweise ist es schwierig, mit einer solch fragmentierten Code-Basis die Funktionsparität auf allen Geräten aufrechtzuerhalten. Eine einheitliche Lösung, bei der eine Code-Basis auf eine grosse Anzahl von Geräten abzielt, kann viele Vorteile bieten. In dieser Arbeit erläutern wir die Schwierigkeiten bei der Entwicklung einer plattformübergreifenden Anwendung und evaluieren vorhandene Lösungsansätze. Schliesslich stellen wir Elemental UI, unser plattformübergreifendes System für die Entwicklung moderner GUI-Anwendungen vor und erläutern die Stärken und Schwächen im Vergleich zu anderen etablierten Systemen.
PDF File Download
Export BibTeX