Subscribe to this collection and be first to get notified when new content arrives.
Kurz gesagt, dieser Leitfaden hilft Ihnen dabei, alles zu entdecken, was Sie wissen müssen React Native-Entwicklung aus geschäftlicher Sicht.
ARTICLES IN THIS COLLECTION
React Native hat, wie jede andere Technologie, ihre Vor- und Nachteile. Es wird nicht für jedes Projekt eine perfekte Lösung sein.
Wie können Sie feststellen, ob es perfekt für Sie ist?
In diesem Handbuch helfen wir Ihnen bei der Untersuchung, indem wir Ihnen unsere folgenden Informationen zur Verfügung stellen:
In diesem speziellen Artikel bieten wir Ihnen eine kompakte Version dieser Ergebnisse = alles, was Sie wissen müssen Die React Native-Entwicklung auf den Punkt gebracht.
Hinweis: Wenn Sie vor einer großen Entscheidung stehen, benötigen Sie Details, dessen sind wir uns vollkommen bewusst. Deshalb wird alles, was wir hier sagen, mit der Zeit verlängert.
Unser Ziel ist es, ein ganzes Handbuch über die Entwicklung von React Native-Apps zu erstellen.
Wenn Sie über bevorstehende Kapitel informiert werden möchten, ziehen Sie Folgendes in Betracht Abonnieren von Handbuch-Updates.
React Native ist ein Framework für die Entwicklung mobiler Apps Dadurch können Entwickler plattformübergreifende Android- und iOS-Apps mithilfe nativer Benutzeroberflächenelemente erstellen.
Es begann 2013 als internes Hackathon-Projekt von Facebook.
Das Ziel von Facebook war es, alle Vorteile der Webentwicklung, wie schnelle Iterationen und ein Team, das das gesamte Produkt entwickelt, auf Mobilgeräte zu übertragen.
Sie veröffentlichten die erste öffentliche Vorschau von React Native im Januar 2015 auf der Reactjs Conference. Das Framework ist seit 2015 auf GitHub verfügbar.
Die Leistung der React Native-Apps ist niedriger als native Apps'.
Die Geschwindigkeit einer plattformübergreifenden App ist immer etwas langsamer als bei nativen Apps. In den meisten Fällen wirkt sich dies jedoch nicht auf die Benutzererfahrung aus. In den meisten Fällen sind die Unterschiede nicht wahrnehmbar.
Darüber hinaus hängt die Leistung stark von der Hardware-, Software- und Codequalität ab, da das JS auf der Client- und nicht auf der Serverseite ausgeführt wird.
Es gibt zwei Arten von Problemen, über die sich Entwickler beschweren:
Die Skalierbarkeit von React Native ist begrenzt und kann manchmal zu Problemen führen (mehr zu diesem Thema im nächsten Kapitel).
Zum Glück arbeitet das React Native-Team ständig an Verbesserungen, und neuere Versionen ermöglichen immer mehr, wie die Beispiele von Facebook, Instagram und Walmart weiter unten in diesem Artikel zeigen.
Die Skalierbarkeit Ihrer App ist jedoch nicht nur eine Frage von React Native selbst, sondern noch wichtiger. die Architektur: du kannst erfolgreich strukturieren Sie die Module Ihrer App für die Skalierung.
Sicherheit wird etwas unpraktisch, wenn Sie React Native verwenden, um eine App zu erstellen, die Sicherheit vom Typ A erfordert (wie Mobile-Banking-Apps).
In solchen Fällen müssen Entwickler besonders auf bösartige Code-Schnipsel achten, insbesondere wenn sie Add-Ons von Drittanbietern verwenden.
Mit React Native können Frontend-Webentwickler zu mobilen Entwicklern werden, ohne Swift oder Java lernen zu müssen.
Erfordert es viel zusätzliches Lernen?
Wir können nicht versprechen, dass Entwickler, die React.js kennen, reibungslos auf die React Native-Entwicklung umsteigen werden. Sie werden welche brauchen Wissen über native UI Elemente.
Es ist wichtig zu beachten, dass die Struktur mobiler Anwendungen, die Integration mit integrierten Komponenten (Kamera, GPS, Mikrofon, Push-Benachrichtigungen, Android/iOS-Betriebssysteme) und der Kontext der Anwendung völlig anders sind als bei Web-Apps.
Wichtiger Tipp zum Mitnehmen: Für Entwickler, die mit React.js vertraut sind, aber noch keine Erfahrung in der mobilen Entwicklung haben, wird das Kennenlernen von React Native nicht ganz reibungslos sein. Sie müssen etwas über native UI-Elemente und Konzepte der mobilen Programmierung lernen.
In Webanwendungen wird der Kontext vom Browser bereitgestellt (gerätespezifisch); in mobilen Anwendungen wird der Kontext meistens von Android- und iOS-Betriebssystemen bereitgestellt. Die Kenntnis dieser beiden Systeme und der Unterschiede zwischen ihnen ist unerlässlich, um mobile Anwendungen in React Native richtig zu entwickeln.
Auf der anderen Seite sind die meisten in React Native geschriebenen Komponenten für beide Plattformen geeignet. Es ist selten, eigene native Komponenten in Android und iOS zu schreiben.
React Native bringt Agilität und Geschwindigkeit in die Entwicklung. Warum können wir das sagen? Der Grund dafür ist: Sie benötigen ein Team statt zwei, um Ihre mobile App zu erstellen, da die meisten React Native-Komponenten zwischen iOS und Android wiederverwendet werden können.
Wie bereits erwähnt, hat React Native, wie jede andere Technologie, ihre Grenzen.
Dazu gehören:
Sie müssen immer noch eine eigene App für jede Plattform entwickeln — Android-Apps müssen andere Anforderungen erfüllen als iOS-Apps. Der Vorteil der plattformübergreifenden Nutzung besteht darin, dass Sie eine Technologie statt zwei, du brauchst also nur ein Team.
Es ist einfach, agil zu arbeiten, und der gesamte Prozess ist schneller, insbesondere wenn Sie den größten Teil des Codes gemeinsam nutzen. Aber du arbeitest immer noch separat an diesen Apps. Aus diesem Grund senkt die plattformübergreifende Entwicklung die Kosten auch nicht um 50% (ein weiterer Mythos).
Hybrid-Apps, die im Wesentlichen mit Frameworks wie Cordova erstellt wurden, sind Webview-Apps mit Zugriff auf Hardwarefunktionen.
React Native zeigt Komponenten als native Komponenten an, die auf der Ebene der Skriptsprache arbeiten. Die Logik der Anwendung ist in JavaScript implementiert.
React Native bietet viele Vorteile, sowohl aus Entwickler- als auch aus Geschäftsperspektive.
Zu den häufig genannten Vorteilen gehören:
Umfangreiche Visualisierungsfunktionen, ein hohes Maß an Anpassungsmöglichkeiten, umfangreiche Benutzerinteraktionen — für schwere Spiele sollten Sie besser die native Entwicklung wählen.
In diesem Fall ist die native Entwicklung schneller als das Schreiben nativer Wrapper. Akkumonitore, Helligkeitsregler, Media Player oder Antivirensoftware — sie verwenden immer native Funktionen und Plattform-APIs. Es ist einfacher, sie in der Muttersprache zu schreiben.
Wenn Ihre App viele Interaktionen, ein hohes Maß an Anpassung und viele Hintergrundprozesse erfordert, ist es möglicherweise besser, nativ zu arbeiten. JavaScript ermöglicht die Erstellung reibungsloser Apps, ist jedoch möglicherweise nicht das Beste für ressourcenintensive Apps.
Heutzutage verwenden viele namhafte Unternehmen React Native für ihre mobilen Apps. Unter ihnen finden Sie Marken wie Walmart, Facebook, Instagram, Blomberg und SoundCloud.
Die App von Walmart ermöglicht es Benutzern, Produkte zu durchsuchen, ihre Preise zu überprüfen, sie zu bestellen und den Kauf zu bezahlen. Das Team achtete auf Produktivität und Markteinführungszeit und wandte sich daher der Entwicklung von React Native zu.
Was waren die Ergebnisse? Sie konnten 95% des Codes zwischen iOS und Android teilen und erzielten eine nahezu native Leistung.
Facebook Ads war die erste React Native-App für Android und die erste App, die vollständig auf dieser Technologie basierte. Das Entwicklungsteam von Facebook verwendete React Native, um eine saubere, intuitive Benutzeroberfläche und eine einfache Navigation zu bieten.
Was war das wichtigste Ergebnis? Eine blitzschnelle Leistung, die sie brauchten.
Instagram entschied sich dafür, React Native in seine bestehende native App zu integrieren, angefangen mit der Push-Benachrichtigungsansicht. Das Team sagt, dass sie 85-99% des Codes zwischen Android und iOS teilen konnten.
React Native Elemente ist ein UI-Toolkit, das großartige Open-Source-UI-Komponenten zusammenstellt, die von Entwicklern erstellt wurden. Es enthält Komponenten wie Preisgestaltung, Overlay, Teiler und plattformspezifische Suchleisten. Sie können einfach angepasst werden. Das Toolkit hat 17.000 Sterne auf Github.
React Native Vektorsymbole ist eine Bibliothek mit über 3.000 Symbolen, die angepasst und gestaltet werden können — perfekt für Buttons und Navbars. Die Bibliothek unterstützt TabBar und Toolbar Android. Sie hat fast 12.000 Sterne auf Github.
CLI entzünden ist eine CLI mit Boilerplates, Plugins, Generatoren und mehr, die Ihnen hilft, Wochen oder sogar Monate an Arbeit zu sparen, wenn Sie mit React Native beginnen. Es ist ein solides Starterkit. Die CLI hat über 11.000 Sterne auf Github.
NativeScript wurde erstmals 2014 von der Progress Software Corporation als Open-Source-Framework für die Erstellung wirklich nativer mobiler Apps mit Angular, Vue.js, TypeScript oder JavaScript veröffentlicht.
Sowohl React Native als auch NativeScript sind JavaScript-Frameworks für Mobilgeräte, und beide sind für Entwickler mit JS-Erfahrung relativ einfach zu erlernen.
Der größte Vorteil von React Native gegenüber NativeScript ist die Multithread-Architektur. Diese Funktion ermöglicht es der JavaScript-Verarbeitung, das Rendern der Benutzeroberfläche nicht zu beeinträchtigen.
Andererseits können Benutzeroberflächen von NativeScript-Apps hängen bleiben, wenn prozessorintensiver JavaScript-Code ausgeführt wird.
Xamarin wurde von Microsoft entwickelt und im Mai 2011 veröffentlicht. Um eine Xamarin-App zu erstellen, müssen Entwickler in C# codieren.
Sowohl React Native als auch Xamarin bieten eine nahezu native Leistung, beide werden von bekannten Marken verwendet und beide bieten großartigen Community-Support.
Der wichtigste Unterschied zwischen diesen beiden Technologien ist die von ihnen verwendete Programmiersprache. Im Fall von Xamarin ist es C# und in React Native ist es JavaScript. Ihre Wahl hängt also stark von der Erfahrung Ihres Entwicklungsteams ab.
Flutter wurde 2017 von Google erstellt. Um eine App mit Flutter zu erstellen, müssen Sie eine Programmiersprache namens Dart lernen. Entwickler behaupten jedoch, dass dies ziemlich einfach zu erlernen ist und die Entwicklung Spaß macht.
Obwohl es das neueste Framework der Reihe ist, ist es bei Entwicklern bereits beliebt geworden. Laut der Entwicklerumfrage von Stackoverflow aus dem Jahr 2020 ist Flutter beliebter als React Native.
Mit React Native kann ein erheblicher Teil des Codes wiederverwendet werden. Von Zeit zu Zeit benötigen Sie eine Komponente oder eine Reihe von Komponenten, die für die Plattform geeignet sind, die Sie ausführen.
Mit Flutter ist alles ein Widget und der Code ist wiederverwendbarer. Sie definieren einen Widget-Baum und verwenden diese Logik wieder.
React Native wird weiterhin von Facebook unterstützt. Einige Unternehmen sind besorgt über diese Abhängigkeit, da sie die Gefahr bergen kann, sie jederzeit zu beenden. Die gute Nachricht ist jedoch: derzeit vorbei 60% des React Native-Codes stammen von unabhängigen Entwicklern'Beiträge.
Die Bedrohung scheint noch weniger schwerwiegend zu sein, da Facebook immer noch stark in React Native investiert und stetig wächst. Vorschläge der Community werden schnell berücksichtigt und Lösungen für Probleme werden in regelmäßigen Veröffentlichungen bereitgestellt.
Die aktuelle Priorität des Teams von React Native besteht darin, die Bibliothek schlanker zu machen, indem die API-Oberfläche reduziert und infolgedessen die Geschwindigkeit der Apps verbessert wird. Hermes, eine JavaScript-Engine, die die Leistung auf Android verbessern soll, befindet sich ebenfalls im Aufbau.
Wichtiger Tipp zum Mitnehmen: React Native wächst dank der Beiträge der Community sowie der Investitionen, regelmäßigen Updates und Veröffentlichungen von Facebook stetig.
Die Architektur von React Native wird ständig modernisiert. Es ist geplant, die Architektur von React Native komplett zu ändern, um native Module, neue Renderer und Verbesserungen bei der Initialisierung abzudecken.
OpenCV ermöglicht es React Native-Entwicklern, Bilder auf Mobilgeräten zu verarbeiten. In diesem Bonuskapitel stellen wir ein Tutorial vor, in dem wir ein Beispieltool erstellen, das Kamerabilder mit nativem Code mithilfe von OpenCV und React Native verarbeitet — Schritt für Schritt.
Dies ist erst der Anfang. Über die Entwicklung von React Native kann noch viel mehr gesagt werden.
Wenn Sie dieses Framework weiter untersuchen möchten, wenden Sie sich bitte an erforschen verfügbare Kapitel jetzt oder abonnieren Sie Handbuch-Updates für benachrichtigt werden über neue Ressourcen, bevor sie der Öffentlichkeit zugänglich gemacht werden.
Viel Spaß!