
Flutter ist ein neues Open-Source-Framework von Google, das bei der Entwicklung nativer Android- und iOS-Apps mit einer Codebasis hilft. Es ist mehr als nur ein Framework, es ist ein vollständiges Software-Entwicklungskit, das alles enthält, was Sie zum Erstellen plattformübergreifender Apps benötigen. In diesem Flutter-Test werden die Vor- und Nachteile des Werkzeugs untersucht.
Vorteile
1. Hohe Leistung
Zahlreiche Faktoren beeinflussen die Leistung einer App, darunter die CPU-Auslastung, die Frame-Nummer pro Sekunde, die durchschnittliche Antwortzeit, die Anforderungsnummer pro Sekunde und vieles mehr. Flutter bietet konsistente 60 fps. Dies ist die Rate, mit der moderne Bildschirme ein glattes und klares Bild anzeigen.
Entwickler versuchen, die Bewegung auf diesem Niveau zu halten, da jede Verzögerung dieser Bildrate vom menschlichen Auge erkannt werden kann. Im Vergleich zu React Native und Xamarin lag dieses Framework mit einer Startzeit von 220 Millisekunden und 58 fps vorn.
2. Zugänglichkeit und Internationalisierung
Als Ergebnis der Befürwortung von Inklusivität und Vielfalt bietet Google integrierte Möglichkeiten, Apps zu erstellen, auf die ein breites Spektrum von Nutzern zugreifen kann. Wenn Sie Ihre App für den Betrieb in verschiedenen Regionen und Sprachen benötigen, möchten Sie normalerweise Ihren Code für lokalisierte Inhalte bereitstellen, die normalerweise später erstellt werden. Dieser Prozess wird als Internationalisierung bezeichnet.
Flutter für die mobile Entwicklung bietet nativ Widgets an, die auf dem Dart intl-Paket basieren, wodurch dieser Vorgang einfacher wird. Es unterstützt jetzt 24 Sprachen, aber auch Maßeinheiten, Layoutoptionen, Währungen und Datumsangaben.
3. Sofortige Updates
Die Architektur von Flutter wurde mit einer Hot-Reload-Funktion versehen, um sofortige Updates ohne Plugins zu ermöglichen. Beim Hot-Reloading können Sie Aktualisierungen in Echtzeit anzeigen. Wenn beim Ausführen des Codes ein Fehler auftritt, können Sie ihn mit dem Framework sofort beheben und fortsetzen, ohne ihn neu starten zu müssen.
Die Rückkehr zur normalen Programmierung, bei der die Bereitstellung viele Minuten dauert, kann ein Problem sein. Hot Reload verbessert Ihre Produktivität, ermöglicht das Experimentieren ohne lange Verzögerungen und hilft bei schnellen Iterationen.
4. Leichte Lernkurve
Wenn das Erlernen von Dart einfach ist, ist es einfacher, sich mit diesem Tool vertraut zu machen. Viele Leute mit geringen Programmierkenntnissen können mit dem Framework Prototypen und Apps entwickeln. Außerdem benötigen Sie keine Erfahrung in der mobilen Entwicklung, um es zu verwenden.
Darüber hinaus ist Google für die Entwicklung einer gut strukturierten und detaillierten Dokumentation beliebt, was bei React Native ein Problem darstellt. Sie können diese Dokumente sowie Videokurse und Codelabs 'praktische Lektionen durchgehen. Kurse sind auf Udacity und Udemy verfügbar, und Sie können sogar Facebook-Communities beitreten.
5. Benutzerdefinierte und vorgefertigte Widgets für die schnelle Codierung der Benutzeroberfläche
Dieses Tool verwendet vorgefertigte Widgets. Mit diesen Bausteinen unterstützt Sie das Tool beim Erstellen einer Benutzeroberfläche. Während viele Ansätze unterschiedliche Objekte wie Controller, Ansichten und Layout verwenden, bietet dieses Framework ein einheitliches und konsistentes Objektmodell. Jedes Objekt in diesem Tool ist ein Widget, einschließlich Schriftarten, Schaltflächen und Auffüllungen. Sie können Widgets zu Layouts kombinieren und Widgets auf jeder Anpassungsebene verwenden.
Widgets in diesem Framework sind in Bäumen angeordnet, was das Rendern erleichtert. Sie können jedoch zu einer übermäßigen Verfeinerung der gesamten Struktur führen. Große Anwendungen können bis zu zehn Codeebenen benötigen, um ein Basisobjekt zu bilden. Daher ist eine angemessene Planung der Struktur im Voraus erforderlich.
Nachteile
1. Probleme mit iOS
Da Flutter für die mobile Entwicklung von Google erstellt wurde, machen sich Entwickler zu Recht Sorgen um die iOS-Implementierung. Da Google ein direktes Interesse an der schnellen Behebung von Fehlern hat, macht das Erstellen von Android-Apps im Framework Spaß und ist schnell. Das neueste Update des Tools enthält ein pixelgenaues iOS-Erscheinungsbild.
Auf dem Framework wurden IPhone-Einstellungen erstellt, um die Möglichkeiten von Cupertino-Widgets zu berücksichtigen. Diese und andere Designfunktionen wurden jedoch später aktualisiert und basierten auf iOS 10-Funktionen, obwohl iOS 11 bereits seit einiger Zeit veröffentlicht wurde. Daher ist nicht klar, ob die Updates weiterhin so schnell wie die der Android-Version veröffentlicht werden, nachdem das Tool die Beta-Phase verlassen hat.
2. Massive Dateigröße
Entwickler durchlaufen große Anstrengungen, um die Größe einer App zu reduzieren. Benutzer haben den Telefonspeicher eingeschränkt, und es ist besser, eine App zu veröffentlichen, die sie daran hindert, sie zugunsten ihrer Lieblingsbilder und -lieder zu löschen. Um die Größe des Codes zu minimieren, vermeiden Programmierer normalerweise Animationen, komprimieren Bilder und reduzieren die Anzahl der Pakete und Bibliotheken.
Das Framework hat Entwickler massiv enttäuscht, nachdem die Hello World-App 6,7 MB erreicht hatte. Selbst wenn es auf 4,7 MB reduziert wurde, blieb es deutlich größer als Kotlin mit 550 KB und natives Java mit 539 KB.
3. Dart
Dart wird für die Entwicklung von Flutter verwendet und hat sowohl Vor- als auch Nachteile. Es ist eine Programmiersprache und sowohl objektorientiert als auch schnell. Es ist jedoch nicht so gut wie Programmiersprachen wie C #, Java, Objective-C und JavaScript.
Nicht viele unerfahrene Entwickler werden auf ihrer Lernreise auf Dart stoßen, und es kann schwierig sein, neue Entwickler für Ihr Team zu finden. Dies ist ein wesentlicher Faktor, der bei einem plattformübergreifenden Ansatz berücksichtigt werden muss.
4. Keine Bibliotheken von Drittanbietern
Pakete und Bibliotheken von Drittanbietern spielen eine wichtige Rolle bei der Automatisierung der Softwareentwicklung für Entwickler und entlasten die Notwendigkeit, von Anfang an alles zu programmieren. Diese Bibliotheken sind normalerweise Open Source, vorab getestet und leicht verfügbar. Für die meisten gängigen und älteren Technologien ist es einfach, das erforderliche Paket zu erhalten.
Da Flutter für die
mobile Entwicklung jedoch neu ist, ist es nicht einfach, solche kostenlosen Pakete und Bibliotheken zu finden. Die offizielle Ressource für kostenlose Pakete verbessert sich immer noch und die Tool-Liste wächst weiter. Sie müssen daher warten, bevor Sie sich für eine langfristige Entwicklung entscheiden.
Wenn Sie nach einem Tool zur Entwicklung mobiler Apps suchen, das eine milde Lernkurve, hohe Leistung, Zugänglichkeit und Internationalisierung, fertige Widgets und sofortige Updates bietet, ist Flutter genau das Richtige für Sie. Beachten Sie jedoch die Nachteile, damit Sie wissen, wo Sie stehen.