Deutsch "Willkommen bei TeamUP – der Plattform für gemeinsamen Sportsgeist! Hier wird die Organisation von Sportaktivitäten spielend einfach. Finde rasch Mitspieler für Volleyball, Tennis oder Laufen. Mit TeamUP planst du Events mühelos und entdeckst eine Vielzahl von Sportarten. Dein Profil teilt deine Vorlieben, und in unserer Community triffst du Gleichgesinnte. TeamUP verbindet Menschen mit Leidenschaft für Sport. Entdecke die Freude am Sport in einer lebendigen Community – werde Teil unseres Teams!"
English "Welcome to TeamUP – the platform for shared sporting spirit! Organizing sports activities is effortlessly simple here. Quickly find teammates for volleyball, tennis, or running. With TeamUP, plan events effortlessly and explore a variety of sports. Your profile shares your preferences, and in our community, you meet like-minded individuals. TeamUP connects people with a passion for sports. Discover the joy of sports in a vibrant community – become part of our team!"
Auf der linken Seite ist der Systemstrukturplan zu sehen, der die Hierarchie und Beziehungen der Systemkomponenten veranschaulicht. Dies bietet einen klaren Überblick über die Struktur und dient als Grundlage für Analyse, Planung und Umsetzung des Systems.
Unsere App setzt auf Swift, die von Apple entwickelte Programmiersprache, um ein reaktionsschnelles und ansprechendes Frontend zu gestalten. Swift zeichnet sich durch seine Einfachheit, Effizienz und klare Syntax aus. Die starke Typisierung minimiert Fehler, fördert eine effiziente Entwicklung und ermöglicht den Zugriff auf iOS-spezifische Bibliotheken. Diese Kombination verspricht eine benutzerfreundliche, performante App und eine optimale Nutzererfahrung.
Die Anmeldeansicht (Log-in View) und die Registrierungsansicht (Register View) wurden mithilfe von Swift-UI erstellt. Das „Firebase/Auth“ Framework wurde verwendet, um Benutzer zu registrieren und anzumelden. Die Anwendung behält die Anmeldeinformationen auch nach dem Schließen bei.
Die Hauptseite erscheint nach dem erfolgreichen Login und bietet die Möglichkeit, durch Events anderer Benutzer zu navigieren. Durch Rechts- und Links-Wischen kann man signalisieren, ob man Interesse an einer sportlichen Aktivität mit dieser Person hat oder nicht. Die angezeigten Informationen umfassen den Namen, die Stärke und die verfügbare Zeit der Person. Zusätzlich gibt es Filteroptionen für Sportart und verfügbare Zeiten.
Hier können Benutzer ein Event erstellen, das von anderen durch Rechts- oder Links-Wischen beurteilt werden kann. Dabei können Sportart, Stärke, Tag und die Entscheidung für ganztägig oder zu einer bestimmten Zeit festgelegt werden.
Die Chat-Funktion ermöglicht es Benutzern, mit ihren Sportsfreunden zu kommunizieren und Termine zu vereinbaren.
Im Profilbildschirm kann der Benutzer in einem Chart sehen, wie oft er in diesem Jahr bestimmte Sportarten ausgeübt hat. Zudem sind offene Events ersichtlich, die noch anstehen. Für das Chart wurde das Framework „Charts“ und „TinyConstraints“ verwendet.
Unser App-Backend wird mit Java unter Verwendung von IntelliJ IDEA entwickelt. Java steht für Robustheit und Plattformunabhängigkeit, während IntelliJ effizientes Programmieren ermöglicht. Die Datenbank, gestützt von MySQL, bietet Geschwindigkeit und Zuverlässigkeit. Diese Technologiekombination schafft ein zuverlässiges, skalierbares Backend, das die Grundlage für eine leistungsstarke App bildet.
Unsere Datenbankstruktur ermöglicht eine effiziente Organisation von Benutzerprofilen, Sportveranstaltungen, Sportarten, sportlichen Interessen und sozialen Verbindungen. Benutzer können ihre Profile mit persönlichen Informationen gestalten, an Sportveranstaltungen teilnehmen, ihre bevorzugten Sportarten und Levels festlegen, Mitgliedschaften verwalten und Freundschaften aufbauen.
Dank Docker Compose war die Erstellung meines Docker-Profils unkompliziert. In der docker-compose.yml-Datei definierte ich mein Benutzerprofil. Ein einfaches starten der Datei in IntelliJ startete mein Profil, und die Datenbank lief reibungslos. Docker Compose erleichterte nicht nur die Profilerstellung, sondern bot auch eine zuverlässige Umgebung für die Entwicklung und den Betrieb meiner Anwendung.
Unsere App empfängt mithilfe von RestControllern nahtlos Befehle vom Backend. Unsere RestController bilden das Herzstück des RESTful Web Services, ermöglichen klare Endpunktdefinitionen und nutzen HTTP-Methoden wie GET, POST, PUT und DELETE. Diese Struktur erleichtert präzise Kommunikation zwischen App und Server. Von Datenabrufen mit GET bis zur Übermittlung neuer Informationen mit POST – die robusten RestController gewährleisten eine effiziente Interaktion.