Flutter erschien Ende 2018 erstmals als Open-Source-Projekt und vereinfacht den Prozess der App Entwicklung von Google. Flutter ist ein Framework für die Entwicklung von Cross-Platform Apps mit der Programmiersprache Dart. In erster Linie wird Flutter für die Entwicklung von iOS und Android Apps verwendet. Auch für macOS, Windows, Linux und Google Fuchsia lassen sich hiermit Apps entwickeln.
Für mit Flutter entwickelte Apps muss man als Programmierer nicht auf die Besonderheiten der verschiedenen Systeme achten, da diese mit nur einer Codebase entwickelt werden können.
Schnelle Ausführungsgeschwindigkeit und kurze Entwicklungszeiten sind der vorrangige Fokus von Flutter.
Aufbau
Flutter selbst verwendet die Dart Virtual Machine (Dart-VM), sowie die Grafikbibliothek Skia. Das Programm Flutter wurde in C++ geschrieben.
Dart
Die von Google entwickelte Programmiersprache Dart läuft wie JavaScript direkt als Web App im Browser und soll daher zu einem modernen Nachfolger der klassischen Web-Skriptsprache werden.
Während Flutter-Programme mit dem Transcompiler Dart2js nach JavaScript übersetzt werden und so direkt in modernen Webbrowsern laufen, lassen sie sich auf einem Server direkt ausführen.
Widget
Die objektorientierte Programmierung wird konsequent bis in die Benutzeroberfläche umgesetzt.
Die Oberfläche eines Flutter Programms besteht im Wesentlichen aus Widgets. Diese können ineinander Geschachtelt sein. Jeder angezeigte Text oder Button ist ein Widget mit unterschiedlichen Eigenschaften, die verändert werden können. Diese können sich gegenseitig beeinflussen und auf Statusänderungen von außen mit eingebauten Funktionen reagieren. Diese können darüber hinaus beliebig um zusätzliche Funktionen erweitert werden.
Vorteile
Die Programmiersprache Dart weist viele Ähnlichkeiten zu anderen Sprachen in grundlegenden Entwicklungsmechaniken auf. Die Entwicklung mit Flutter wird erheblich beschleunigt, da es zusammen mit Dart von Google entwickelt wurde und die beiden somit aufeinander aufbauen, was die Entwicklung enorm beschleunigt.
Weitere Vorteile sind, dass Flutter und Dart Open-Source sind und Flutter frei verwendbar ist.
Außerdem werden eine umfangreiche Dokumentation und Community-Support geboten.
Auch dass nur eine Codebasis für alle wichtigen Betriebssystem entwickelt werden muss, ist ein Vorteil von Flutter, ebenso wie die vorgefertigten UI-Elemente, welche feste Bestandteile der Software sind.