WIE FACEBOOKS NATIVE REAGIEREN WIRD MOBILE APPS ÄNDERN - TECHCRUNCH - SOZIALEN MEDIEN - 2018

Anonim

Anders Lassen Mitwirkender

Anders Lassen ist Gründer und CEO von Fuse, einer nativen App-Tool-Suite für Designer und Entwickler.

Mehr Beiträge dieses Mitarbeiters

  • Wie Facebook React Native Mobile Apps ändern wird

Anmerkung der Redaktion: Anders Lassen ist Gründer und CEO von Fuse , der ersten nativen App-Tool-Suite für Designer und Entwickler.

Facebook hat sein React-Native-Framework für die Erstellung mobiler Apps nur auf Open-Source-Basis bereitgestellt. React Native verspricht Entwicklern, JavaScript zu schreiben und gleichzeitig eine echte native Benutzeroberfläche zu liefern. Das ist eine Beschreibung, die nicht technische Leser dazu bringen könnte, mit den Schultern zu zucken, aber ich glaube, dass diese Ankündigung einige tiefgreifende Auswirkungen hat. React Native wird bald die gesamte Entwicklungsumgebung für mobile Apps verändern und jeden betreffen, der ein Smart-Gerät besitzt.

Ein Waffenstillstand im HTML vs. Native War

Seit vielen Jahren müssen Entwickler von mobilen Apps eine äußerst schwierige Entscheidung treffen: Entwickle ich meine Apps mit den nativen Tools von Apple oder Google oder baue ich meine App mit einer Art plattformübergreifender Lösung?

Es ist allgemein anerkannt, dass native Tools für Entwickler erforderlich sind, um die beste Benutzererfahrung zu erzielen. Sie produzieren schnellere, sauberere Apps, die so aussehen und sich so verhalten, wie die Benutzer es für jede Plattform erwarten. Der Nachteil ist, dass diese Tools ziemlich schwer zu erlernen und zeitaufwendig zu verwenden sind, insbesondere im Vergleich zu Tools zum Erstellen von Websites. Native Tools basieren ebenfalls auf völlig inkompatiblen Programmiersprachen, was bedeutet, dass eine App zweimal oder öfter entwickelt werden muss, um auf iOS, Android und anderen Plattformen zu laufen. Dies ist ein offensichtlicher Kostentreiber und eine große Belastung für die gesamte Branche.

Cross-Plattform-Lösungen basieren dagegen meist auf Web-Technologien wie HTML, CSS und JavaScript. Auf allen mobilen Plattformen können Webseiten angezeigt werden. Das bedeutet, dass Sie nur eine Version einer App mit webbasierten Tools mit einem viel schnelleren Workflow entwickeln müssen. In der Theorie ist das so.

In der Praxis ist dieser Ansatz mit Leistungs- und Kompatibilitätsproblemen gespickt, die oft zu unangenehmen Benutzererlebnissen führen, sowie energieaufwendigen Apps, die Ihr Gerät aufwärmen und Ihre Batterie ausschöpfen. Wann immer Sie frustriert versuchen, eine mobile App zu verwenden, die sich wie eine verherrlichte Webseite anfühlt, ist dies normalerweise der Grund.

React Native zeigt starke Vordenkerrolle, abgesehen davon, dass JavaScript-Entwicklern native Benutzeroberflächen zur Verfügung stehen.

React Native ist ein neues Werkzeug, das diese beiden bestehenden Ansätze miteinander verbindet. Entwickler können zwar JavaScript schreiben, eine sehr beliebte Einstiegssprache, die auf allen mobilen Geräten ausgeführt werden kann, aber sie zeigt die Benutzeroberfläche mit echten nativen Komponenten an. Dies ist eine attraktive Lebensader für JavaScript-Entwickler. Viele von ihnen haben den Tag gefürchtet, an dem sie endlich die komplizierteren Objective-C-, Swift- und Java-Sprachen lernen müssen, um den Sprung in die Welt der nativen Apps zu schaffen.

Obwohl die Plattform noch viel zu beweisen hat, zeigt uns React Native, dass wir nicht länger die harte Entscheidung zwischen HTML und nativen App-Benutzerschnittstellen treffen müssen. Die native Benutzeroberfl äche steht endlich all jenen gestandenen Entwicklern von JavaScript zur Verfügung.

Bessere, kreativere Apps

Ein wenig tiefer geht es bei React Native um eine starke Vordenkerrolle, die den JavaScript-Entwicklern nicht nur native Benutzeroberflächen zur Verfügung stellt. Vielleicht noch wichtiger ist, dass Facebooks Deep Dive Presentation letzten Januar einen komplett neuen Workflow präsentiert, der unzählige Stunden von einem großen App-Projekt abschneidet und App-Entwicklern eine weitaus befriedigendere Produktionserfahrung bietet.

Während Webentwickler Änderungen am Code vornehmen und die Ergebnisse dieser Änderungen fast sofort in einem Webbrowser anzeigen können, müssen native App-Entwickler Minuten darauf warten, dass ihre Tools auf einem mobilen Gerät kompiliert, bereitgestellt und gestartet werden. Dies ist nicht nur eine Zeit zu saugen; es tötet auch den Drang, kreativ zu sein und mit neuen Ideen zu experimentieren. Ecken werden geschnitten, und Entwickler entscheiden sich für unterdurchschnittliche Ergebnisse, einfach weil das Zwicken und Polieren so lange dauert.

Erwarten Sie in den kommenden Jahren sauberere und reaktionsfähigere Apps.

React Native führt eine Trennung zwischen der nativen Benutzerschnittstelle und der Logik ein, die sie antreibt, und verwendet dabei einen sogenannten "reaktiven" Ansatz. Während die Benutzeroberfläche auf dem mobilen Gerät ausgeführt wird, kann die Logik überall ausgeführt werden, wie im Browser der Entwicklercomputer. Dies bedeutet, dass sie die Tools und den Workflow aus der Webentwicklung verwenden können. Nehmen Sie eine Änderung vor, sehen Sie die Ergebnisse sofort auf dem Gerät oder in einem Emulator; Apps schneller machen oder zusätzliche Zeit damit verbringen, neue Ideen auszuprobieren.

Während dies alleine nicht jeden davon überzeugen kann, zu JavaScript und Browser-Tools zu springen, ist das, was React Native geleistet hat, sicherlich eine große Inspiration für alle Tool-Entwickler. Angesichts der explosionsartigen Entwicklung der mobilen App-Branche und der hohen Nachfrage nach Entwicklerstunden muss das Warten darauf, dass Computer unsere Apps neu kompilieren und neu bereitstellen, der Vergangenheit angehören.

Eine offene, inspirierende Codebase für eine neue mobile Ära

Jetzt, da Facebook die React Native Codebasis open-sourced hat, ist sie kostenlos und für alle verfügbar. Daher können wir erwarten, dass sowohl der Code als auch seine Ideen in andere Tools und Entwicklungsplattformen einfließen. Das Gleiche passierte mit React Natives Vorgänger, React.js, einem Framework zum Erstellen von webbasierten Benutzeroberflächen. Obwohl die Ideen und Konzepte von React.js an sich ein beliebter Rahmen sind, haben sie auch einen starken Einfluss auf andere Frameworks ausgeübt.

Was bedeutet das für den Endbenutzer? Erwarten Sie in den kommenden Jahren sauberere und reaktionsschnellere Apps, sogar für Apps, die mit minimalem Aufwand produziert werden. Hochwertige App-Entwicklung wird billiger und App-Entwickler werden produktiver und kreativer.

Die App-Branche leidet immer noch unter den gleichen Problemen, die wir seit der Erfindung des Smartphones hatten: doppelte Arbeit an iOS und Android, schwer zu verwendende Tools und langsame Entwicklungs-Iterationen. Aber jetzt, dank Facebook, ist der Weg in die neue Ära klar: Bessere Tools, neue Ideen und Open-Source-Codebasen.