\section{Backend} Für das Backend wird das \Gls{java}-Framework \Gls{spring} verwendet. Neben seiner Modularität, bietet es viele Funktionen, die unter anderem die Entwicklung von Backend-Anwendungen vereinfachen. Darunter fällt zum Beispiel die Unterstützung von Dependency Injection, dessen Vorteile bereits beschrieben wurden. Außerdem unterstützt \Gls{java} \Gls{spring} intern eine Verwaltung von \Glspl{db}, sodass sich nicht mit dem \Gls{SQL}-Code an sich befasst werden muss. Auch bezüglich Authentifizierung und Sicherheit bietet \Gls{spring} eigene Funktionalitäten. Zusätzlich dazu wird als Build-System für das \Gls{java}-\Gls{spring}-Backend Maven verwendet. Maven hilft dabei alle Abhängigkeiten des Projekts zu verwalten und automatisiert den Build Prozess. Durch die zusätzliche Unterstützung von Versionskontrollsystemen und der Kompatibilität zu vielen Continuous Integration-Tools wird außerdem die Entwicklung in einem Team erleichtert und optimiert. Denn dadurch können Build- und Deployment-Prozesse automatisiert werden. Außerdem bietet Maven Bibliotheken zum Testen sowie zur Generierung von Dokumentationen an. Vom Backend benötigte Abhängigkeiten: \begin{itemize} \item \Gls{spring} Web \item \Gls{spring} Security \item \Gls{spring} Mail Sender \item \Gls{spring} Data JPA \item Lombok \item Rome (\Gls{rss} parsing/fetching) \end{itemize}