Der Überblick über JavaScript-Frameworks: Welches für Ihr Projekt auswählen?

Vor zehn Jahren mussten Unternehmen, die plattformübergreifende Projekte erstellen wollten, mit verschiedenen Entwicklungsteams und Experten zusammenarbeiten. 2009 hat das Spiel jedoch geändert, da die Entwickler von Nitobi (später von Apache gekauft) Cordova vorstellten - ein neues Framework, mit dem Webanwendungen in mobile Systeme konvertiert werden konnten. Durch die Verknüpfung der Geräte-APIs über Plugins konnten Entwickler auf Smartphones und Tablets zugreifen. Cordova ist eine JavaScript-basierte Technologie, die mit verschiedenen Plattformen kompatibel ist.

In diesem Handbuch werden drei weitere JS-gesteuerte Systeme vorgestellt, ihre einzigartigen Funktionen untersucht und verglichen.

Mobile Apps: Typen und Funktionen


Aber fangen wir mit ein paar grundlegenden Dingen an. Für Entwickler gibt es kein Geheimnis, dass Anwendungen entweder nativ oder hybrid sein können. Wir möchten kurz darauf eingehen, was diese Begriffe bedeuten und wie sie sich unterscheiden.

Native Apps sind Apps, die in einer Muttersprache für eine bestimmte Plattform erstellt wurden (z. B. Kotlin - für Android; Objective C - für iOS). Die Entwicklung nativer Softwareprodukte ist kostspielig, da Sie für jede Plattform eine eigene App erstellen müssen. Gleichzeitig können diese Anwendungen bestimmten Systemen helfen, ihr volles Potenzial auszuschöpfen.

Der zweite Typ sind Hybrid-Apps. Sie basieren in der Regel auf einheitlichen Sprachen und sind mit verschiedenen Betriebssystemen kompatibel. Sie sind billiger zu bauen, da Sie eine Reihe universeller Werkzeuge für alle Systeme verwenden können. Benutzer interagieren jedoch normalerweise mit Hybridanwendungen über WebView oder Browser. Daher sind sie langsamer und bieten nicht die gleiche Benutzererfahrung wie native Apps, da ihnen plattformspezifische Funktionen fehlen.

Da Hybridprodukte häufig auf JS-Frameworks basieren, sollten Sie diese überprüfen und herausfinden, wie sie bei der Entwicklung helfen können.

Onic


Es wurde 2013 eingeführt und für das Entwerfen von Anwendungen mit einfachen Technologien wie JS, HTML5 und CSS entwickelt. Mit Ionic erstellte Produkte funktionieren mit mobilen, Desktop- und Online-Plattformen.

Beachten Sie, dass sich dieses Tool auf die Benutzeroberfläche anstatt auf Back-End-Lösungen konzentriert. Um Produkte mit Ionic zu entwickeln, benötigen Sie noch zusätzliche Tools wie Cordova, um den Code zu verpacken. Derzeit ist das Set in Angular integriert, während Erweiterungen für Vue und React entwickelt werden.

Mit Ionic betriebene Programme werden in Low-Level-Browsern ausgeführt und nutzen die Funktionen des Geräts wie GPS oder Kamera. Als Beispiel für ionische Apps möchten wir das offizielle MarketWatch-Produkt und die türkische Version der McDonald's-App hervorheben.

Nativecript


Das nächste Open-Source-Framework mit JS-Unterstützung wurde etwas später als Ionic gestartet. Die Autoren haben NativeScript 2014 mit dem Ziel erstellt, native Apps mithilfe von JavaScript oder einer anderen einheitlichen Sprache wie TypeScript zu entwerfen. Es funktioniert auch mit Angular und Vue. Die Endprodukte sind dieselben wie diejenigen, die über native Frameworks erstellt wurden. Darüber hinaus können Entwickler Bibliotheken von Drittanbietern ohne Code-Wrapping-Tools verwenden.

Um JS-Elemente in Elemente umzuwandeln, die für die APIs der Geräte verständlich sind, verwendet NativeScript Bridges - Laufzeiten für Interaktionen zwischen Schnittstellen und Code. Technisch ist dies dank JS Virtual Machines möglich (z. B. V8 für Android und JavaScriptCore für iOS). Bei Produkten, die mit diesem Framework erstellt wurden, sollten Sie Apps auf PUMA und Strudel überprüfen.

Native reagieren


Es wurde 2013 gestartet, 2015 jedoch als Open Source veröffentlicht. React Native ist laut den Benutzern von GitHub ein bekanntes Tool zum Starten nativer Apps. Natürlich basiert das System auf der React-Bibliothek, die sich auf das Entwerfen von Benutzeroberflächen konzentriert, aber React Native verfügt auch über viele Widgets, mit denen Entwickler native Erfahrungen liefern können.

Grundsätzlich wandelt das System Ihren Code in eine Reihe nativer Ansichten für Plattformen um. Angenommen, es konvertiert anfängliche Textmodule in UIView für iOS und in TextView für Android. Daher können wir das Layout in die Nähe des nativen bringen, anstatt Anwendungen in Browseransichten zu starten.

React Native ist weit verbreitet und wird sogar von Facebook-Entwicklern verwendet (z. B. zum Erstellen neuer Funktionen wie Wellness Check). Auch große Unternehmen wie Bloomberg, Tesla und Vogue verwenden dieses Tool.

Vergleichstabelle


Es ist höchste Zeit, die drei beschriebenen Systeme zu vergleichen, um herauszufinden, welches am besten geeignet ist.

1. Benutzerfreundlichkeit und Leistung


In erster Linie sollten Sie den Rahmen finden, der Ihren Anforderungen perfekt entspricht. Dies bedeutet, dass die Auswahl weitgehend von der Branche abhängt, in die Sie eintreten möchten. Also:

  • Ionic ist wunderbar für Progressive Web Apps und bietet die beste Wiederverwendbarkeit. Einfach ausgedrückt steht es für Write Once, Run Everywhere-Idee.
  • NativeScript verarbeitet kompliziertere Anwendungen mit Schwerpunkt auf UX / UI. Daher eignet es sich hervorragend zum Erstellen mobiler Apps und anderer Produkte.
  • React Native bietet die beste Leistung und eignet sich perfekt für geschwindigkeitsabhängige Apps. Es hat eine schlechtere Wiederverwendbarkeit und folgt der Idee "Einmal lernen, überall schreiben".

2. Widgets


Beachten Sie diesen Punkt, wenn Sie verschiedene Erweiterungen implementieren möchten:

  • Ionisch. Viele Anwendungen und Widgets, einschließlich Google Maps.
  • NativeScript Unterstützt zahlreiche Erweiterungen - es gibt fast 1000 davon.
  • Native reagieren. Hat keinen separaten Marktplatz, funktioniert aber gut mit Apps von Drittanbietern.

3. Popularität


Ohne Zweifel ist React Native der Gewinner, wenn es um Popularität geht. Es hat mehr als 1700 Mitwirkende, während Ionic und NativeScript 272 bzw. 119 enthalten. Die Entwicklergemeinschaft bevorzugt die Verwendung von React Native für verschiedene Aufgaben, unabhängig von der schlechten Wiederverwendbarkeit.

4. Schwierigkeit


Hier hängt alles von Ihrem technischen Hintergrund ab. Ionic wird für fast alle einfach sein, da es einen verständlicheren Ansatz für die Codierung bietet. Es gibt auch viele Anleitungen zu diesem Framework. NativeScript und React Native sind sich ziemlich ähnlich. Wenn Sie JavaScript kennen, ist es einfacher, mit diesen Tools zu beginnen.

Welches Framework soll ich wählen?


Alles in allem sollten Sie Ihre genauen Anforderungen umreißen, um das beste Werkzeug auszuwählen. Obwohl sich diese Frameworks auf die Erstellung von Smartphone- / Tablet-Apps konzentrieren, haben sie unterschiedliche Ansätze und Spezifikationen. Zum Beispiel ist Ionic einfach und flexibel, kann jedoch keine Projekte mit erweiterten Grafikanforderungen verarbeiten. React Native bietet eine sehr hohe Leistung, zwingt Sie jedoch dazu, für jede Plattform eine neue Benutzeroberfläche zu entwerfen. Schließlich ist NativeScript relativ schnell, aber Apps benötigen viel Speicherplatz auf Ihrem Gerät. Wähle mit Bedacht!

Source: https://habr.com/ru/post/de440992/


All Articles