Interview mit Anton Epple

Harmonisches Zusammenleben von Business-Logik und Design

Hartmut Schlosser

Anton Epple

Der Zwist zwischen Entwicklern und Designer ist in der IT schon fast sprichwörtlich. Wie man das Kriegsbeil zwischen diesen beiden Parteien mit technischen Mitteln begraben kann, zeigt der UI-Experte Anton Epple in seinem Talk auf der JAX 2017. Wir haben ihn um einen kleinen Einblick gebeten.

JAXenter: Du zeigst auf der JAX, wie man UIs mit Java baut, ohne sich zu lange mit Designdetails auseinandersetzen zu müssen. Wie geht das?

Anton Epple: Das wichtigste ist eine saubere Trennung von Design und Business-Logik. Dafür verwendet man heutzutage meist das Model -View-View-Model-Entwurfsmuster, kurz MVVM. DukeScript ist das einzige Java-Framework, das MVVM sauber umsetzt. Mit HTML und CSS haben wir die View-Technologie gewählt, für die es die meisten Experten und die besten Tools gibt. So ist es ganz leicht die Arbeit aufzuteilen und die Pixelschubserei den Profis zu überlassen.

So ist es ganz leicht die Arbeit aufzuteilen und die Pixelschubserei den Profis zu überlassen.

JAXenter: Was steckt technologisch hinter DukeScript?

Anton Epple: DukeScript ist eine dünne Schicht zwischen Java und einem HTML-Renderer. Die Business-Logik wird in Java ausgeführt und der View wird von der HTML-Renderer dargestellt. Durch das MVVM-Pattern ist das ganz einfach. So können wir DukeScript auch ganz leicht auf neue Plattformen portieren. Wir nehmen auf jeder Plattform bestehende Komponenten und kombinieren Sie mit etwas plattformspezifischem Code. Das ist viel weniger Aufwand als eine eigene Rendering-Pipeline zu unterhalten und zu portieren. Und das Ergebnis ist besser, da die HTML-Renderer ständig weiterentwickelt.

JAXenter: Du hast mit DukeScript 2014 ja den Duke Choice Award gewonnen. Wo steht das Projekt heute? Welche Features sind dazugekommen, wohin geht die Reise?

Anton Epple: 2014 standen wir noch ziemlich am Anfang. Durch den Duke’s Choice Award haben wir viele Kunden gewonnen. Die Projekterfahrung konnten wir dann ins Framework zurückfließen lassen. Es war interessant zu sehen, in welch unterschiedlichen Bereichen unsere Kunden DukeScript einsetzen. Dadurch haben wir viel gelernt.

Eine wichtige Weiterentwicklung ist die Zusammenarbeit mit Position sro, die eine Komponentenbibiothek und zusätzliche Profi-Tools für DukeScript entwickeln. Mit controls4j kann man jetzt UIs per Drag and Drop bauen. Das beschleunigt die Anwendungsentwicklung und ermöglicht es auch Entwicklern ohne Erfahrung mit Webtechnologien, schnell anspruchsvolle UIs umzusetzen.

JAXenter: Wie stehst du heute zu der Idee, GUIs mit JavaFX direkt zu bauen? Für welche Szenarien ergibt das noch Sinn?

Anton Epple: JavaFX ist ein Riesenfortschritt gegenüber Swing und kann vor allem dort sinnvoll eingesetzt werden, wo lokale Dateien bearbeitet werden oder auf Treiber und Systemressourcen zugegriffen wird. Ich denke da hat JavaFX eine ähnliche Nische gefunden wie früher Swing. Es arbeiten auch meist Teams damit, die früher Swing eingesetzt haben, und die etwas in die Jahre gekommene Programmierung mit Widgets gewohnt sind. Ich selbst würde auch hier natürlich DukeScript einsetzen, da es einfach bessere Tools und eine moderne Architektur hat.

JavaFX ist ein Riesenfortschritt gegenüber Swing.

JAXenter: In deiner zweiten Session hackst du ein Zahnbürste, eine Nähmaschine und einen Spiegel. Kannst du uns da mal einen kleinen Vorgeschmack geben, wie man das geht und was man da alles so anstellen kann?

Anton Epple: In dieser Session geht es tatsächlich ums Hacken, also ums Ausprobieren, Umbauen, Aufbohren und Spaß haben. Wir haben zu Hause eine Nähmaschine mit automatischer Stickeinheit. Ich habe dann das Format für die Stickdateien Reverse Engineered, damit ich in Java neue Designs erstellen kann, zum Beispiel aus SVG-Pfaden.

Den Smartmirror habe ich gebaut, nachdem ich herausgefunden hatte, dass es für meine Zahnbürste eine API gibt. Jetzt kann ich die Daten der Zahnbürste im Spiegel visualisieren. Solche Projekte machen Spaß und man lernt eine Menge Neues dabei. Am meisten Spaß hatte ich mit dem Projekt als auf der JavaONE James Gosling in einer Keynote meine Demo mit meiner Zahnbürste gestartet hat – als Darth Vader verkleidet.

Anton Epple ist Java Champion, Mitglied des NetBeans Dream Teams, Trainer, Berater und Fachbuchautor. Sein Lieblingsthema sind Java basierte Frontend-Technologien, insbesondere DukeScript.

Verwandte Themen:

Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Hartmut Schlosser ist Redakteur und Online-Koordinator bei Software & Support Media. Seine Spezialgebiete liegen bei Java-Enterprise-Technologien, JavaFX, Eclipse und DevOps. Vor seiner Tätigkeit bei S & S Media studierte er Musik, Informatik, französische Philologie und Ethnologie.
Kommentare
  1. 2017-06-07 18:08:19

    Was ist bei den anderen Java-Frameworks, die MVVM machen falsch bzw. unsauber?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.