Facebook-Fans und App-Enthusiasten können sich endlich freuen: Das viel beachtete und kürzlich angekündigte Rahmenprojekt des Unternehmens wurde gestern auf der Facebook F8 Developer Conference vorgestellt. Native reagieren ist eine radikale Abkehr von der Entwicklung von mobilen UI-Apps.

Als dieses Open-Source-Projekt zum ersten Mal angekündigt wurde, erhielt es begeisterte Reaktionen von Entwicklern. React Native ist ein neuer Ansatz, da Entwickler Code schreiben und dann in wenigen Sekunden auf die Ergebnisse blicken können. Natürlich ist dies für manche attraktiver, als erst einmal die gesamte App neu kompilieren zu müssen, wie es traditionell der Fall war, um die Entwicklungsergebnisse zu sehen.

Trotz des Hypes als radikale Veränderung in der App-Entwicklung teilt React Native einige Gemeinsamkeiten mit herkömmlichen Best Practices. Zum Beispiel basiert es wie andere Hybridtechniken immer noch auf JavaScript.

Allerdings unterscheidet sich dieses app-building Framework deutlich durch die Entfernung eines plattformübergreifenden Wrappers. In der Regel greifen Entwickler auf native Funktionen auf verschiedenen Geräten zu. Stattdessen ermutigt React Native die Entwickler, JSX, eine Facebook-JavaScript-Variante, für native Widgets zu verwenden. Dann können Entwickler nativ auf die Apps zugreifen und das gleiche Verhalten, Aussehen, Leistung und Gefühl als "echte" native Apps beobachten.

Wenn Sie jedoch denken, dass React Native ein vollwertiges Framework für diese Art von App-Entwicklung ist, denken Sie noch einmal darüber nach. Facebook mag es, uns einen Curveball zu verpassen: Das Unternehmen bezeichnet dieses Framework gerne als ein Werkzeug, auf das sich Entwickler verlassen können, um Apps zu sehen, die mit der Model View Controller-Architektur erstellt wurden. Es ist daher nicht verwunderlich, dass Facebook bereits bei der Erstellung von Companion Tools wie Relay und GraphQL .

Eine neue Designphilosophie

Der Sinn von React Native ist, dass Facebook Designer auf ganz neue Weise über die App-Erstellung nachdenken möchte. React Native führt dies durch die Einführung eines Frameworks durch, das auf der Idee von "einmal lernen" und "überall schreiben" basiert. Mit anderen Worten, React Native kann App-Entwickler dazu befähigen, sich damit vertraut zu machen und dieses Wissen dann einfach und effizient zu entwickeln Apps auf verschiedenen Plattformen.

Theoretisch können App-Entwickler eine App für iOS erstellen und dann das, was sie in diesem Prozess gelernt haben, verwenden, um schnell eine Android-App zu entwickeln und zu erstellen. Anstatt eine App zu erstellen und sie dann an verschiedene Betriebssysteme anzupassen, ermöglicht es React Native ihnen, ihr Wissen über das Framework zu nutzen und Apps von Grund auf neu zu entwickeln. Facebook glaubt, dass dieser Ansatz den gesamten App-Entwicklungsprozess einfacher und effektiver machen wird. Denn wenn Entwickler einmal Native React Native erlernen können, befinden sie sich alle auf derselben Seite, wenn sie von einem Betriebssystem zum nächsten wechseln.

Bevor Android-Entwickler zu aufgeregt werden, gibt es leider eine Warnung: Derzeit ist die Android-Unterstützung noch nicht verfügbar. React Native kann nur mit iOS verwendet werden, aber Facebook arbeitet mit Android-Unterstützung, während ich schreibe; Bleib dran…

Die Ursprünge von React Native

Wenn Sie sich über die Geschichte dieses Rahmens wundern, geht es zurück zu Facebooks React-Technologie Dies ist eine JavaScript-Bibliothek, die für die Erstellung von Benutzeroberflächen gedacht ist. Bemerkenswert an React ist, dass es schon seit knapp zwei Jahren existiert, obwohl es in dieser kurzen Zeit schon ziemlich populär geworden ist. Was diese Technologie auszeichnet, ist, dass sie gleichzeitig Logik und Präsentation aufnimmt, was ein weiterer mutiger Schritt auf Facebook ist.

Die React-Technologie basiert auf Code-Einheiten, die sich wie Klassen verhalten. Diese Komponenten absorbieren dann Daten und erzeugen HTML basierend auf den Daten. Darüber hinaus bieten einzelne Komponenten den Entwicklern sogar spezifische Funktionen, die es ermöglichen, sie für verschiedene Projekte zu verwenden. Dies hat insgesamt den Effekt, Wiederverwendung zu fördern und das Denken hinter der Programmierlogik zu rationalisieren.

Was Facebook sagt

Es ist hilfreich und lehrreich zu lesen, was die Facebook-Leute über ihren Projektstart sagen. Native Projektleiter Tom Occhino, schrieb dass der Rahmen Designern beispiellose Freiheit gewährt. Die Tatsache, dass es sich bei den Komponenten um unterbrechungsfreie Funktionen handelt, die das widerspiegeln, was Entwickler erwarten, unterstreicht Occhino, wie Entwickler den üblichen Schritt des Lesens von der grundlegenden Rendered-View-Implementierung überspringen können, bevor sie darauf schreiben.

Auf der React Native-Website wies Facebook außerdem darauf hin, dass Designer grundlegende Plattformkomponenten wie den UI-Navigations-Controller für iOS und die UI-Registerkartenleiste verwenden können. Dadurch werden Apps erstellt, die ein einheitliches Erscheinungsbild aufweisen und mit der gesamten Plattform konsistent sind. Es setzt auch die Messlatte in Sachen Qualität höher. Konstrukteure können sich freuen, dass Komponenten mühelos über die Native-Komponenten von React Native in eine App integriert werden, nämlich Navigator IOS und Tab Bar IOS.

Die erste Reaktion auf den neuen Rahmen von Facebook war im Allgemeinen positiv, und es hat geholfen, dass der positive Reaktion kam von Leuten wie Mozilla-Entwickler James Long. Natürlich, jetzt, wo React Native weithin verfügbar ist, wird nur die Zeit zeigen, wie sie wirklich empfangen wird. An diesem Punkt wurde die Reaktion in zwei Lager geteilt: diejenigen, die diese Nachricht mit offenen Armen begrüßen, und diejenigen, die diesen ehrgeizigen Wandel in der App-Entwicklung von Facebook skeptisch und sogar kritisch sehen.

Der große Vorgeschmack darauf ist, wie Facebooks React Native die JavaScript-Entwicklungsindustrie zum Besseren oder Schlechteren verändern wird. Wenn Sie diese Nachrichten mit der NativeScript-Projekt von Telerik, es scheint sicherlich, dass JavaScript-Entwickler für einige ereignisreiche Zeiten sind.

Um es Facebook zu sagen - und, ja, wir sind uns bewusst, dass sie bei der Ankündigung der Veröffentlichung ihres neuen Projekts ihr eigenes Horn hacken müssen - sind sie sehr begeistert davon, was das für die Designbranche bedeutet. Occhino verdoppelte den Hype und erzählte der Welt, wie "aufgeregt" das Unternehmen war, React Native für alle auf GitHub verfügbar zu machen und es als Open-Source-Tool für iOS zu veröffentlichen.

Er versicherte der Welt, dass die Android-Unterstützung bald verfügbar sein wird - wie schnell aber jemand raten wird - und dass Facebook plant, mit der Initiative React for the Web weiterzumachen. Der Plan des Unternehmens scheint gewesen zu sein, den iOS-Support so früh wie möglich zu veröffentlichen, um so viel Feedback wie möglich von den frühen Nutzern dieses Frameworks zu sammeln und diese Informationen dann für die Android-Unterstützung auf der ganzen Linie zu nutzen.

Was die Zukunft bringt

Wie bei allen neuen Design-Releases werden die frühen Anwender immer daran erinnert, dass das, was sie bekommen, alles andere als perfekt ist. Wenn Sie also mit React Native experimentieren, seien Sie nicht überrascht, wenn etwas noch nicht so implementiert ist, wie Sie es für richtig halten oder wenn etwas nicht richtig funktioniert. In beiden Fällen ist Facebook für Sie da, weil es alle frühen Benutzer dazu einlädt, von Anfang an so viel Feedback wie möglich zu geben.