Die Umwandlung von herkömmlichen Desktop-Lösungen für den täglichen Geschäftsbetrieb zu Webapplikationen wird zunehmend verfolgt. Es werden vermehrt intuitive Benutzeroberflächen benötigt, wobei insbesondere die bekannten Frontend Web-Frameworks wie Angular, React oder VueJs eine zentrale Rolle spielen. Die daraus entstehende Wartung dieser Applikationen während dem Lebenszyklus ist ein Schlüsselelement. Daher ist es bedeutend, genügend Entwicklungszeit in Benutzeroberflächen zu investieren.
Projektor Pattern, JavaFX, JavaScript, TypeScript, React
Das Ziel dieser Arbeit war es zu beantworten, ob und wie das Projektor Pattern im Web-Framework React eingesetzt werden kann und welche Auswirkungen bei der Wartung einer Lösung hervorgerufen werden.
Open Dolphin ist eine quelloffene Lösung, die eine
Synchronisationsbrücke zwischen Java Enterprise und JavaFX bildet. Die
Kernfunktionalität liegt in der Verwendung der gemeinsam genutzten
Uniform Presentation Models. Sowohl der Server als auch der Client
benutzen die selben Models. Das Projektor Pattern kommt im Client zum
Einsatz und erzeugt eine Abstraktion der Anzeige. Dabei werden
Presentation Models verwendet, um eine Bindung zur Benutzeroberfläche
herzustellen.
Das Projektor Pattern wurde zuvor noch nicht in React umgesetzt.
Die Antworten zeigen, dass das Projektor Pattern durchaus mit React
zweckgerichtet eingesetzt werden kann. Bei Wartungsarbeiten für
Benutzeroberflächenelemente, die sich in der Applikation oft
wiederholen, kann damit der Wartungsaufwand verringert werden. Ebenso
können bestehende, mit dem Projektor Pattern erstellte Code-Strukturen
einfacher für neue Funktionalitäten wiederverwendet werden.
Bei den Untersuchungen in React wurden allerdings mit der
Implementierung aus dieser Arbeit Performanceeinbussen festgestellt.
Für Applikationen mit wenigen Screens sollten diese
Performanceeinbussen akzeptabel sein. Applikationen mit vielen
Screens, welche viele ihrer Bauteile mit dem Projektor Pattern
gestaltet haben, könnten jedoch rasch in Verzögerungen in der
Benutzeroberfläche geraten.
Weiterführende Forschung im Bereich Projektor Pattern für React könnte
sich mit der Optimierung der Performance in der Benutzeroberfläche
oder dem Zusammenspiel zwischen Benutzeroberfläche und Server
beschäftigen.
konoma GmbH
Rütistrasse 6
5400 Baden
Schweiz
Kenan Hacan (kenan.hacan@students.fhnw.ch)
Dierk König (dierk.koenig@fhnw.ch)