Zum Hauptinhalt springen
FHEDEEN
Infomaterial anfordern

Bachelor Flyer Master Flyer

Kontakt

Sekretariat Angewandte Informatik
Tel.: 0361 / 6700-5510 sekretariat-ai@fh-erfurt.de

Besucheranschrift:

Fachhochschule Erfurt
Fakultät Gebäudetechnik und Informatik
Fachrichtung Angewandte Informatik
Altonaer Straße 25
99085 Erfurt

RoomEx - Erstellung einer Kotlin-Bibliothek für eine vereinfachte Erstellung von Datenbankrelationen in Room

RoomEx - Vereinfachte Relationen in Android Room mithilfe von Annotationsverarbeitung

Für die Entwicklung von Softwareanwendungen stellen Datenbanken einen wesentlichen Schwerpunkt dar, um das systematische Abspeichern und Lesen von Daten, welche bei der Verwendung der Anwendung anfallen, zu koordinieren. Um die Verarbeitung dieser Daten möglichst einfach zu gestalten, stehen sogenannte ORM-Bibliotheken zur Verfügung, welche diese Aufgaben weitestgehend automatisieren. Eine dieser ORM-Bibliotheken ist die, von Google speziell für das Betriebssystem Android entwickelte Bibliothek Room.

 

Im Rahmen dieser wissenschaftlichen Arbeit wird ein Konzept erstellt und implementiert, wie Room um eine neue Funktion erweitert werden kann. Diese neue Funktion soll die Verwendung und Erstellung von Relationen mit Room wesentlich vereinfachen und übersichtlicher gestalten.

Hierfür wird zunächst die Arbeitsweise mit und von Room näher beleuchtet, um Schnittpunkte zu finden, an denen eine solche Funktion eingesetzt werden kann.

Auch wird die dynamische Quellcode Generierung betrachtet, welche bereits seitens Room verwendet wird, um unter anderem eigene Implementierungen von benutzerdefinierten Klassen vorzunehmen. Hierbei werden einige unterschiedliche Varianten der Quellcode Generierung beleuchtet und geprüft, wie diese vorgehen und ob eine Verwendung für die geplante Funktionalität zielführend ist.

Die, bei der Implementierung, erstellte Bibliothek RoomEx gilt als Proof-Of-Concept, welches also die Durchführbarkeit der geplanten Erweiterung aufzeigen soll.

Ein abschließender Ausblick zeigt die weiteren Ziele sowie Entwicklungsmöglichkeiten einer vollwertigen Bibliothek auf.

 

For the development of software applications, databases represent an essential focus in order to coordinate the systematic saving and reading of data that accumulates during the use of the application. To make the processing of this data as simple as possible, so-called ORM libraries are available that automate these tasks as far as possible. One of these ORM libraries is Room, which was developed by Google especially for the Android operating system.

 

In the context of this scientific work, a concept will be created and implemented on how Room can be extended by a new function. This new function is intended to make the use and creation of relations with Room much easier and clearer.

For this purpose, the working method with and of Room will first be examined more closely in order to find intersections where such a function can be introduced.

We will also look at dynamic source code generation, which is already used by Room to implement custom implementations of user-defined classes, among other things. In this context, several different variants of source code generation are examined and it is assessed how they operate and whether their use is appropriate for the desired functionality.

The RoomEx library, created during the implementation, is considered a proof-of-concept, which is intended to demonstrate the viability of the planned extension.

A concluding outlook shows the further goals and development possibilities of a fully-fledged library.

Zurück