Die Nutzung von Apps auf mobilen Geräten war noch nie so präsent wie heute. Dabei verteilt sich die Zielgruppe primär auf die Betriebssysteme Android und iOS. Um möglichst viele Nutzer zu erreichen, sollten Apps daher idealerweise für beide Plattformen entwickelt werden. Plattformübergreifende App-Entwicklung kann diesen Prozess deutlich effizienter gestalten. Durch diese Methode lassen sich Anwendungen anhand einer einzigen Codebasis für mehrere Plattformen entwickeln, wodurch der erforderliche Entwicklungsaufwand erheblich reduziert wird.
Im Rahmen dieser Arbeit werden die zwei populären Frameworks für plattformübergreifende Entwicklung, Flutter und React Native, anhand einer in beiden Frameworks umgesetzten Beispiel-App und einem detaillierten Kriterienkatalog verglichen. Die demonstrativen Anwendungen zeigen typische UI-Elemente, Netzwerkanfragen, plattformspezifische Funktionen (z.B. GPS, Kamera, Benachrichtigungen), Interaktionen mit einer lokalen Datenbank sowie Einstellungen für Sprache und Erscheinungsbild. Die Evaluation basiert auf Kriterien wie Unterstützung gerätespezifischer Funktionen, Langzeitunterstützung, Erscheinungsbild, Geschwindigkeit, Entwicklungsaufwand und Wartbarkeit. Dabei werden sowohl Messungen als auch subjektive Erfahrungen während der Entwicklung berücksichtigt. Abschließend werden anhand der herausgearbeiteten Vor- und Nachteile Empfehlungen formuliert, die je nach Anwendungsfall und Entwicklerkenntnissen die Wahl des optimalen Frameworks erleichtern.
Die Ergebnisse zeigen, dass beide Frameworks äußerst leistungsfähig sind, allerdings unterschiedliche Schwerpunkte setzen. Flutter besitzt eine von der Plattform unabhängig dargestellte Benutzeroberfläche, die sich durch den umfassenden Katalog an Widgets effizient umsetzen lässt, sowie eine nahtlose Integration in Entwicklungsumgebungen wie Android Studio oder Visual Studio Code. React Native hingegen punktet besonders bei der Anpassungsfähigkeit an das jeweilige Betriebssystem, da es native UI-Komponenten verwendet. Zudem erleichtert der Einsatz der verbreiteten Programmiersprache JavaScript Webentwicklern den Einstieg erheblich. Beide Frameworks erfüllen die meisten Kriterien mit einer sehr guten Bewertung. Flutter erreicht insgesamt eine geringfügig bessere Gesamtbewertung.

