Skip to content

Struktur des Projektes (Implementierung)

xLacrima edited this page Feb 28, 2019 · 2 revisions
projektstruktur

In der Abbildung ist die wesentliche Struktur innerhalb der Implementierung zu erkennen. Zunächst findet eine Unterteilung in core, infrastructure, persistence und presentation. Die Anordnung von diesen kann man sich wie in der Folgenden Grafik veranschaulicht vorstellen.

architecture

Quelle: Jason Tyler

Durch diese Aufspaltung der verschiedenen Verantwortlichkeiten wird es möglich, einzelne Bestandteile der Anwendung zu einem späteren Zeitpunkt einfach austauschen zu können. Innerhalb des Core befindet sich der Application und Domain Layer. Die möglichen Objekte in der Domäne wie Entities, Value Objects etc. sind hier beheimatet. Zusätzlich sind durch Interfaces Repositories und andere Services definiert die durch die äußeren Schichten implementiert werden müssen. Im Persistence Layer, werden die im Core definierten Repositories durch die Verwendung von Spring-Data und JPA implementiert. Im Infrastructure Layer ist das Messaging Backend auf der Basis von Apache Kafka umgesetzt auch dies implementiert durch den Core vorgegebene Services. Abschließend im Presentation Layer, sind die REST Controller zu finden welche die notwendigen CRUD Operationen für das anlegen und verwalten von Routen und Orten bereitstellen.

Für die notwendigen Berechnungen mit Geodaten (Erkennung ob dementiell veränderte Person sich auf einer der angelegten Routen oder Orte befindet) verwenden wir PolyUtil, eine Utility Bibliothek von Google, welche normalerweise in Android Awendungen zum einsatz kommt.

Clone this wiki locally