Google hat Updates für die Flutter- und Dart-SDKs veröffentlicht, die eine ganze Reihe von Verbesserungen für die plattformübergreifende einheitliche Entwicklung mit sich bringen. Lesen Sie weiter für mehr!
Flattern ist ein Plattformübergreifendes ProgrammierframeworkZiel ist es, die Probleme bei der Entwicklung plattformübergreifender Apps ohne den Aufwand von nicht-nativem Code zu lösen. Mit Kenntnissen der Programmiersprache Dart kann ein Entwickler Apps für Android, iOS, Web und Desktop mit einem einheitlichen UI-Erscheinungsbild für alle erstellen. Flattern 1.9 brachte die Unterstützung für macOS und Catalina in einen Alpha-Zustand Version 1.12 hat ihre Unterstützung über den Pre-Alpha-Status hinaus ausgereift. Jetzt bringt Google eine neue Version 1.17 von Flutter und Version 2.8 von Dart heraus und markiert damit die ersten stabilen Versionen für Flutter und Dart im Jahr 2020.
Flattern 1.17
Letzten Monat hatte Google kündigte Änderungen an seinem Veröffentlichungsprozess an. Dem früheren Prozess des Unternehmens fehlte Klarheit darüber, wann Releases erstellt werden würden, welcher Code darin enthalten sein würde und so weiter. Jetzt plant Google, etwa vierteljährlich stabile Versionen zu veröffentlichen. Dies allein stellte einige Herausforderungen dar, da die Release-Infrastruktur für den neuen Release-Prozess umgerüstet werden musste. Jetzt wird Flutter 1.17 im stabilen Kanal für Entwickler veröffentlicht. Google hat seit der letzten Veröffentlichung von Flutter 1.12 6.339 Probleme geschlossen und in diesem Jahr mehr Fehler behoben, als geöffnet wurden, was zu einem Nettorückgang von etwa 800 Problemen führte.
Neben Fehlerbehebungen bringt Flutter 1.17 erhebliche Leistungsverbesserungen, verbesserte Unterstützung für Metal auf iOS und enthält neue Material-Widgets.
Leistungsverbesserungen
Apps, die mit Flutter 1.17 erstellt wurden, verzeichnen im Vergleich zu älteren Versionen eine Geschwindigkeitssteigerung von 20–37 % für den Standardnavigationsfall, bei dem es undurchsichtige Routen ohne Transparenz gibt. Es gibt auch eine erhebliche Verbesserung bei den mit Flutter 1.17 erstellten App-Größen. Beispielsweise ist das Flutter Gallery-Beispiel im Jahr 2020 jetzt 8,1 MB groß, gegenüber 9,6 MB Ende 2019. Was die Speichernutzung angeht, bringt die Version 1.17 eine Speicherreduzierung um 70 % beim schnellen Scrollen durch große Bilder.
Metall ist Apples Low-Level-Grafik-API, die nahezu direkten Zugriff auf die zugrunde liegende GPU von iOS-Geräten bietet. Flutter verwendet beim Erstellen für unterstützte iOS-Geräte jetzt standardmäßig Metal, wodurch Flutter-Apps schneller ausgeführt werden. Die verbesserte Metal-Unterstützung verbessert die Rendering-Geschwindigkeit von iOS-Apps im Durchschnitt um etwa 50 %. Auf iOS-Geräten, die Metal nicht vollständig unterstützen, d. h. auf Geräten mit iOS-Versionen vor 10 und vor dem A7-Prozessor, greift Flutter auf OpenGL zurück.
Flutter 1.17 bietet Unterstützung für neue Material-Widgets. Es gibt auch Updates für bestehende Widgets. NavigationRail unterstützt Entwickler beispielsweise beim Hinzufügen reaktionsfähiger App-Navigationsmodelle zu Apps und eignet sich hervorragend für Apps, die zwischen mobilen und Desktop-Formfaktoren wechseln können. Die Überlauf-Widgets DatePicker und TextSelection wurden ebenfalls aktualisiert: Die neuen visuellen Elemente von DatePicker entsprechen den aktualisierten Materialrichtlinien und fügen eine neue hinzu Texteingabemodus, während TextSelection jetzt eine verbesserte Wiedergabetreue für iOS und Android bietet, wenn Schaltflächen länger sind, als ohne angezeigt werden können überfüllt. Schließlich liefert Google auch das neue Animationspaket aus, das vorgefertigte Animationen zur Umsetzung des neuen Pakets bereitstellt Materielle Bewegung Spezifikation.
Weitere Änderungen in Flutter 1.17
- Google hat die Implementierung abgeschlossen Typskala-Teil der Material Design-Spezifikation 2018 ohne bestehende Flutter-Apps zu zerstören.
- Google Fonts für Flutter v1.0 ist jetzt auch verfügbar. Dadurch können Entwickler mit beliebigen Schriftarten experimentieren und diese verwenden Schriftarten.google.com in ihrer App. Der Entwickler kann entscheiden, ob er die Schriftart mit der APK bündelt oder ob der Benutzer die Schriftart erhält, indem er sie von der API herunterlädt.
- Google hat die Zugänglichkeit von Flutter-Apps durch Korrekturen beim Scrollen, bei Textfeldern und anderen Eingabe-Widgets verbessert.
- Google bereitet außerdem den Austausch der aktuellen Version von Dart DevTools durch die neue Flutter-Version vor. Entwickler können diese neue Version testen, indem sie DevTools starten und dann auf das „Breaker“-Symbol in der oberen rechten Ecke von DevTools klicken. Die größte Verbesserung in der neuen Flutter-Version von Dart DevTools ist die neue Registerkarte „Netzwerk“, die den Netzwerkverkehr für Ihre Flutter-App anzeigt, wenn Sie auf die Schaltfläche „Aufzeichnen“ klicken.
- Eine weitere Verbesserung ist eine experimentelle „Schnellstart“-Option, mit der Sie das Debuggen der Flutter-App bis zu 70 % schneller starten können, wenn Sie eine App für Android erstellen.
Google lobt auch das Superformula-Team für die Neugestaltung des gesamten Spiels MGM Resorts Android-App im Flattern.
Dart 2.8
Dart ist die Programmiersprache, die zum Erstellen von Apps in Flutter verwendet wird. Mit der Veröffentlichung des Dart 2.8 SDK führt Google einige Änderungen ein:
- Verbesserungen an der Kneipe Client-Tool, das zum Verwalten von Paketen verwendet wird, die von heruntergeladen wurden pub.dev-Paket-Repository.
- Google hat die Leistung von verbessert Kneipe bekommen durch Hinzufügen von Unterstützung für das parallele Abrufen und Zurückstellen von Paketen Kneipenbetrieb Vorkompilierung.
- Google hat außerdem ein neues Tool hinzugefügt (Kneipe veraltet), um sicherzustellen, dass Paketabhängigkeiten auf dem neuesten Stand bleiben.
- Vorbereitung auf solide Nullsicherheit, da Nullverweise eine häufige Ursache für Anwendungsabstürze sind, die auftreten, wenn Code versucht, eine Variable zu lesen, die einen Nullwert hat.
- Google bereitet sich darauf vor, Unterstützung für solide Nullsicherheit in Dart hinzuzufügen, wodurch sichergestellt wird, dass alle ausgedrückten Variablen Nicht-Null-Werte enthalten.
- Die Implementierung einer soliden Null-Sicherheit ist ein riesiges Unterfangen, das zunächst zu Brüchen in der Dart-Sprache und den Dart-Bibliotheken führen wird. Google möchte, dass Entwickler darüber informiert werden diese bahnbrechenden Veränderungen und melden Sie alle Probleme auf ihrem Issue-Tracker.
Mehr zu diesen und weiteren Änderungen im Detail können Sie in den Ankündigungsbeiträgen zu Flutter 1.17 und Dart 2.8 nachlesen.