R wie React - App Entwicklung A bis Z
Das Webframework React wurde von einem Facebook Softwareingenieur entwickelt und wird seit 2011 für Facebooks Newsfeed eingesetzt. Das Framework steht Webentwicklern für single-page applications zur Verfügung. Was darunter verstanden wird und was React mit mobile Apps zu tun hat, erfahren Sie in diesem Beitrag.
Im Gegensatz zu herkömmlichen Webseiten wird bei single-page applications (SPA) die gesamte Applikation in nur einem HTML Dokument abgebildet und die Inhalte dynamisch nachgeladen. Dies bringt entscheidende Vorteile bezüglich Performance. Zudem gelten SPA’s als „offline-friendly“, da Daten aus einem Zwischenspeicher verfügbar sind, auch wenn der Webserver nicht aufrufbar ist. Möchte man eine single-page application entwickeln, stehen verschiedene Javascript-Frameworks wie Angular von Google, die Opensource-Lösung Vue oder eben React von Facebook zur Verfügung. Wobei Angular sich vor allem für traditionelle, komplexere Applikationen eignet, ist React besonders performant und verfügt über eine grosse Community. Was auch Gründe sind, weshalb wir bei diesen Projekten React eingesetzt haben.
Wo React für Webapplikation eingesetzt wird, steht React Native für mobile Lösungen zur Verfügung. Das Javascript-Framework agiert als Layer über der plattformspezifischen Programmiersprache und übersetzt quasi in die entsprechende native Sprache. Somit lassen sich iOS und Android Apps gleichzeitig mit derselben Codebasis entwickeln. Solche sogenannten Cross-Platform Apps bieten dadurch den Vorteil, den Entwicklungsaufwand und den Wartungsaufwand zu verringern. Die zusätzliche Zwischenschicht mit dem Javascript Framework bringt aber auch Nachteile in der Performance und erschwert das Ansprechen von nativen Komponenten. Neben React Native ist für die Entwicklung von Cross-Platform Apps auch das Framework Xamarin bekannt, mit welchem wir in diesen Projekten Erfahrung gesammelt haben.