
Eine Code-Basis, aber Apps für Android, iOS, das Web und macOS mit Flutter 1.12 (Screenshot: t3n.de)
Auf der Veranstaltung „Flutter Interact“ am Dienstag im US-amerikanischen Brooklyn, New York, hat Google den nächsten Meilenstein in der Entwicklung seines Cross-Plattform-Frameworks gezeigt. Neben iOS und Android unterstützt das Tool jetzt auch macOS und das Web.
Ambient Computing bedeutet Geräteunabhängigkeit
Das auf Googles Programmiersprache Dart basierende Flutter-Framework bietet den einfachen Einstieg in ein Konzept, das die Kalifornier als „Ambient Computing“ bezeichnen. Dabei sollen Entwickler die Möglichkeit erhalten, sich ausschließlich darauf zu konzentrieren, was sie programmieren wollen, und nicht darauf, für welche Zielgeräte sie es herstellen.
Offensichtlich Sinn ergibt diese Überlegung, wenn es um native Apps für Android und iOS geht. Hier war bislang kaum eine plattformübergreifende Entwicklung auf einer gemeinsamen Code-Basis möglich. Zumindest dann nicht, wenn Entwickler die jeweils beste Lösung für das jeweilige Betriebssystem verwenden wollten. Schräge Kompromisse gibt es seit Längerem.
Dart-Framework Flutter entwickelt sich rasant
Vor einem Jahr stellte Google dann Flutter vor, ein Dart-Framework, das genau diese homogene Entwicklung auf einer Code-Basis versprach und seit seinem Start schon über eine Million Entwickler von sich überzeugen konnte.
Seitdem verbessern die Entwickler Flutter in rasantem Tempo. Allein in diesem Jahr sah das Tool fünf Updates. Das Google-Team arbeitet nach eigenen Angaben deshalb so engagiert daran, weil sich im eigenen Hause damit erhebliche Produktivitätsgewinne erzielen lassen würden. So entstand etwa die Stadia-App mit Flutter.
Das sehen offenbar auch andere so. Laut GitHubs Jahresreport 2019 stehen Dart und Flutter auf den Plätzen 1 und 2 für die Sprache und das Open-Source-Projekt mit dem schnellsten Wachstum. Linkedin assistiert und bezeichnet Flutter-Kenntnisse als die sich am schnellsten verbreitenden unter Software-Entwicklern.
Flutter expandiert ins Web
Erscheint dem App-Entwickler eine gemeinsame Code-Basis für Android und iOS schon als ein ausschlaggebender Grund, legt Flutter in der nun verfügbaren Version 1.12 noch einen drauf: Damit erweitert das Projekt-Team das Framework um die Fähigkeit, aus dem Flutter-Code progressive Web-Apps (PWA) und native Apps für Apples macOS zu erstellen.

Journey: erstellte App und Web-App mit Flutter. (Foto: Google)
Dabei befindet sich die PWA-Unterstützung im Beta-, die macOS-Unterstützung im Alpha-Status. Das erklärte Ziel der Flutter-Entwickler besteht darin, Programmierern zu ermöglichen, „Pixel auf beliebige Screens zu malen.“ Damit sind per Definition auch Smart-TV, Fahrzeuge, Uhren und jede andere Art von Gerät mit Bildschirm gemeint.
Flutter setzt auf Web-Standards
Der Web-Support von Flutter funktioniert in beide Richtungen. Zum einen können Entwickler damit unter Verwendung des DOM, Canvas und CSS Web-Anwendungen erstellen. Flutter spricht die entsprechenden APIs selbstätig an. Das erforderliche JavaScript wird über den Dart-Compiler erzeugt. Am Ende steht eine Web-App als einzelnes komprimiertes File zur Implementation auf einem Webserver bereit. Zum anderen kann Flutter in nativen Apps mit Webviews so arbeiten, dass es dynamische Daten an gewünschter Stelle nahtlos integriert.
Inzwischen existieren über 1.800 Plugins für Flutter, darunter auch bereits einige Web-Plugins, etwa jenes für die Firebase-Unterstützung oder den Google-Login.
Dart auf Version 2.7 aktualisiert

Der Online-Editor Dartpad unterstützt jetzt auch das Ausführen von Flutter-Apps. (Screenshot: t3n.de)
Neben dem Update auf Flutter 1.12 widmeten sich die Entwickler auch der Funktionserweiterung der unterliegenden Programmiersprache Dart. Die unterstützt in Version 2.7 weitere Methoden und bringt ein erweitertes Dartpad, einen Online-Editor, der nun um die Möglichkeit, Flutter-Apps auszuführen, erweitert wurde.
Als nächstes will Flutter die Entwicklung nativer macOS-Apps implementieren. Die Funktionalität ist da, aber noch im Alpha-Stadium. Wagemutige Entwickler können bereits experimentell damit arbeiten.
Passend dazu: Warum Flutter eine vielversprechende Alternative für die Entwicklung von Cross-Plattform-Apps ist
Mich freut es, dass Flutter immer beliebter ist. Jedoch haben die 5 Updates dieses Jahr nicht das größte Problem von Flutter behoben – die Anbindung der nativen Funktionalitäten eines Smartphones. Solange diese nicht vollständig unterstützt werden, sehe ich keinen Grund Flutter benutzen zu wollen