In letzter Zeit haben Microframeworks wie Javalin, Ktor, Spring Fu oder Micronaut in der Java-Welt zunehmend an Bedeutung gewonnen. Anhand eines internen Projektes haben wir zwei Microframeworks evaluiert, um herauszufinden wie sich diese bewähren und für welche Kontexte sich die Frameworks eignen. Die Frameworks, die im Rahmen der Evaluierung betrachtet wurden, waren Javalin und Micronaut. In diesem Beitrag zeigen wir zuerst den detaillierten Anwendungsfall.

Bevor wir anfangen den Anwendungsfall aufzuzeigen, sollten wir vielleicht eine Frage beantworten; Was versteht man unter einem Microframework?

Ein Microframework ist ein minimalistisches Webanwendungs-Framework und bietet im Gegensatz zu Full-Stack Frameworks, wie z.B. Spring Boot, nur die hierfür notwendigen Funktionalitäten an. Es fehlen hierbei bspw. Funktionen, wie:

„¢ Konten, Authentifizierung, Autorisierung, Rollen

„¢ Datenbankabstraktion über eine objektrelationale Zuordnung

„¢ Eingabevalidierung und Eingabebereinigung

„¢ Web Template Engine

In der Regel erleichtert ein Microframework das Empfangen und Weiterleiten einer HTTP-Anforderung an einen Controller, die Verarbeitung durch den Controller sowie das Zurückgeben einer HTTP-Antwort. Microframeworks kommen in diesem Zusammenhang häufig bei der Erstellung von APIs für einen anderen Dienst oder eine andere Anwendung zum Einsatz.

Technologiemanagementsystem

Nun kommen wir zurück auf unser Projekt namens Technologiemanagementsystem. Das Technologiemanagementsystem ist eine Single Page Applikation, in der unterschiedliche Technologien gespeichert und bewertet werden können.

Es sollte eine Microservices Architektur mit wenigen Microservices realisiert werden, in der die einzelnen Frameworks verglichen werden können. Bei dem beispielhaft zu entwickelnden Technology Microservice handelt es sich um einen simplen Service, der ein REST Backend bereitstellt, welches Zugriffe auf eine relationale Datenbank (PostgreSQL) zulässt.

Der Backend Technology Microservice (Rest API) ermöglicht, dass über eine in Angular entwickelte Single Page Applikation (siehe Abbildung 1) Technologien gepflegt und gemanaged werden können.


Abbildung 1 – Startseite in Angular entwickelte Single Page Applikation

Dazu bietet der Microservice grundlegende Funktionalitäten an. Über dieser Startseite kann der Microservice die Liste der aktuell eingepflegten Technologien zeigen. Neue Technologien können angelegt werden, vorhandene Technologien können geupdatet werden und nicht mehr benötigte Technologien können ebenso gelöscht werden. Außerdem erkennt das Backend Ü„hnlichkeiten und verhindert dadurch Doppeleingaben. Der Filter am linken Rand der Anwendung ermöglicht einen Filter über mehrere Tags in Kombination mit mehreren Bewertungskriterien.

Die Erkenntnisse über Frameworks, die wir während der Evaluierung gewonnen haben, werden in den kommenden Beiträgen dargestellt.

Alle Beiträge von Meryem Cigdem

Schreibe einen Kommentar