Flutter App-Entwicklung: Alles über das beste Cross-Plattform Framework

April 27, 2023


Seit Google das Flutter-SDK für mobile Anwendungen eingeführt hat, wurde es zum Kern vieler bekannter plattformübergreifender mobiler Anwendungen. Mit steigender Popularität wächst die Zahl der mit Flutter App-Entwicklung weiter. Werfen wir einen Blick auf das Flutter-Framework und seine Vor- und Nachteile. Lernen Sie außerdem einige der mit Flutter erstellten mobilen Apps kennen und wie die robusten Funktionen von Flutter zu ihrem Erfolg beigetragen haben. 


Flutter App-Entwicklung: Open-Source UI-Framework

Um eine auf iOS entwickelte App auch für Android verfügbar zu machen, bedeutet das für Entwickler und Entwicklerinnen nochmal extra Arbeit und Zeit. Häufig kommen zudem noch Updates oder Fehlerbehebungen für die App hinzu, welche nun sowohl im Play Store als auch im App Store veröffentlicht werden müssen – also an zwei Stellen statt nur an einer. Es müssen demnach immer zwei Codebasis gepflegt werden und es sind somit auch mehrere Entwickler* nötig, welche die jeweilige Programmiersprache beherrschen.

​​Flutter ist ein von Google erstelltes, kostenloses, Open-Source UI-Framework für die Erstellung plattformübergreifender mobiler Anwendungen. “Plattformübergreifend” heißt oft auch leistungslos oder minderwertig (bzgl. UX/UI, Robustheit usw.), jedoch ist die Technologie hinter Flutter ähnlich den üblichen nativen Frameworks von iOS und Android. Damit können in vielen Fällen Apps mit dem selben Code für Android und iOS gebaut werden, ohne Kompromisse an Qualität machen zu müssen. Flutter wurde 2017 veröffentlicht und ermöglicht Entwickler, mobile Anwendungen für iOS und Android mit einer einzigen Codebasis und Programmiersprache zu erstellen. Diese Fähigkeit macht die Entwicklung von iOS- und Android-Apps einfacher und schneller.  

Das SDK & seine Bausteine

Das Flutter-Framework besteht sowohl aus einem Software Development Kit (SDK) als auch aus einem Widget-basierten UI-Toolkit. Dieses Toolkit wird aus verschiedenen wiederverwendbaren UI-Elementen gebildet, die den Entwicklern beim Programmieren einen intuitiven Aufbau bieten. Man kann sich das Ganze also wie eine Art Baukasten vorstellen, der verschiedene Tools und Elemente enthält. Beispielsweise gibt es Buttons, Überschriften oder Texteingaben, welche die App-Entwicklung vereinfachen, da sie als Grundbausteine bereits vorhanden sind.   

Dart – Flutters Programmiersprache 

Für die Entwicklung von mobilen Anwendungen mit dem Flutter-Framework wird eine Programmiersprache namens Dart verwendet. Mit einer Syntax, die den meistbenutzten modernen Programmiersprachen ähnelt ist Dart eine typisierte Objektprogrammiersprache, die sich auf die Front-End-Entwicklung konzentriert. Dart ist aktuell noch eher unbekannt und noch nicht voll ausgereift. Trotzdem soll die Verwendung vor allem für Entwickler, die sich bereits mit einer anderen Programmiersprache auskennen sehr einfach und leicht zu erlernen sein. Zudem weist die zunehmende Beliebtheit von Flutter durchaus daraufhin, dass somit auch Dart zukünftig populärer und bekannter sein wird.  

Wie viele Flutter-Apps gibt es?

Als Google im Jahr 2020 Flutter 1.20 veröffentlichte, stieg die Zahl der verfügbaren Flutter-Apps im Play Store laut Berichten von 50.000 auf 90.000. Im März 2021, zur Veröffentlichung von Flutter 2, gab es bereits mehr als 150.000 Flutter-Apps im Play Store. Besonders der Launch von Flutter 3 im Mai 2022 erweiterte das Potential der Plattform immens, da sich die Anzahl an Apps nochmal um ein Vielfaches vergrößert hat. Laut Angaben stehen Flutter-Entwickler bereits über 500.000 Applikationen zur Verfügung. Wir von Monstarlab sind uns sicher, dass die Zahl mit der wachsenden Popularität von Flutter weiter steigen wird.

Vergleichbare Cross-Platform Frameworks

React Native

Sieht man sich andere Cross-Platform-Frameworks wie React Native an, fällt einem besonders eine Verschiedenheit auf. Auch React Native, das von Facebook kreiert wurde, ermöglicht Programmierern plattformübergreifende App Entwicklungen durchzuführen. Anders als Flutter, verwendet React Native allerdings die Programmiersprache JavaScript. Dabei ist ein großer Vorteil, dass sich bereits viele Professionelle mit dieser Programmiersprache auskennen, während Dart noch weniger bekannt ist. Allerdings ist React Native aufgrund seiner Architektur beschränkt und kann andere Plattformen wie Windows nicht so einfach unterstützen. Flutter unterstützt mittlerweile viele Plattformen, und eine darin geschriebene App kann mit relativ niedrigem Aufwand auch auf macOS, Linux oder Windows laufen. Die Architektur von Flutter ist der anderer nativen Frameworks ebenfalls viel ähnlicher als React Native und erlaubt damit mehr Flexibilität beim Aufbau von hochwertigen und interessanten User Interfaces.  

Xamarin und Ionic

Weitere vergleichbare Frameworks sind unter anderem Xamarin oder Ionic. Xamarin kam bereits 2011 auf den Markt, ist allerdings vergleichsweise weniger performant. Zudem benötigen die damit entwickelten Applikationen mehr Speicherplatz. Das in 2019 veröffentlichte Cross-Plattform-Framework Ionic, unterstützt Apps ähnlicher Komplexität. Flutter erscheint uns aber auch hier gegenüber noch performanter zu sein und besitzt, anders als Ionic, zusätzlich native Elemente, die den App-Entwicklern in der täglichen Praxis zur Verfügung stehen.

Vor- und Nachteile

Vorteile einer Flutter App-Entwicklung

Warum sollte nun also Flutter für ein Projekt genutzt werden? 

  • Die Möglichkeit, attraktive Apps für iOS- und Android-Plattformen gleichzeitig erstellen zu können, spart sowohl Zeit als auch Ressourcen. Die Widgets von Flutter minimieren den Zeitaufwand für das Testing, da sie sicherstellen, dass es wenig Kompatibilitätsprobleme mit verschiedenen Betriebssystemversionen gibt.
  • Flutter besitzt nicht nur eine sehr intuitive Struktur, sondern auch ein deklaratives User Interface, welches weniger Fehleranfällig und leichter zu testen ist. Das Framework zeichnet sich auch durch nützliche Funktionen wie das “Hot Reload” Feature aus. Während eine Simulation erfolgt, können Codeänderungen direkt übernommen werden. Somit werden die am Quelltext vorgenommenen Änderungen sofort umgesetzt. Dies trägt zur effizienten Entwicklung von Apps bei.  
  • Auch die verwendete Programmiersprache Dart ist durch Ähnlichkeiten zu bereits populären Sprachen angenehm zu erlernen. Insgesamt erinnern Flutter-Apps aufgrund des Verzichts auf die JavaScript Bridge durchaus an native Entwicklungen und sind äußerst performant.

Nachteile einer Flutter App-Entwicklung

Gibt es denn auch Gründe, die dafür sprechen, Flutter zu meiden? 

  • Kritisiert wird bei Flutter, dass aufgrund der komplexen Verschachtelung von Widgets der Code unübersichtlich wird – dann verliert man leicht den Überblick. Dadurch, dass alles individuell angepasst werden muss, kann es außerdem schwer sein, eine App mit einem einheitlichen Stil zu versehen. Und noch immer gibt es einige Bugs, die bislang nicht behoben wurden. 
  • Die neuesten Plattform-Features werden immer erst in den nativen Frameworks unterstützt. Erst danach wird die Unterstützung für diese in die 3rd-party Frameworks eingebaut. Obwohl neue Plattform-Features in Flutter relativ schnell erscheinen, gibt es trotzdem eine gewisse Verzögerung. 
  • Obwohl Dart in der Anwendung außerdem recht ähnlich gegenüber anderen Sprachen ist, richtet sie sich tendenziell eher auf Personen aus, die bereits eine Programmiersprache beherrschen. 

Die Nutzung von Flutter für die Entwicklung von Apps wird zunehmend beliebter. Schwebt auch Ihnen vor, Ihr Produkt mit einer leistungsstarken und zuverlässigen Technologie wie Flutter zu bauen? Nehmen Sie gerne mit unserem Technical Director Matko Smoljan Kontakt auf: 

flutter app entwicklung

Beispiele für Flutter Apps

Schauen wir uns abschließend ein paar mit Flutter programmierte App Beispiele an. Auf dem Markt gibt es bereits jetzt eine Vielzahl an erfolgreichen Flutter Applikationen. Dazu gehören unter anderem die Apps von BWM, ebay, Google Pay, Alibaba Group und viele mehr. Klar wird auf jeden Fall schnell, was für eine enorme Bandbreite an Apps das Flutter-Framework mit seinen funktionellen Tools abdecken kann. Und allen Anzeichen nach wird diese Zahl in der Zukunft nur noch weiter steigen. Aber auch für Spielentwicklung ist Flutter interessant, da es eine einfache und schnelle Entwicklung ermöglicht. 

Unser Fazit zur Flutter App-Entwicklung 

Insgesamt scheint Flutter also nicht nur in den vergangenen Jahren rasch an Beliebtheit gewonnen zu haben, sondern wird auch in Zukunft weiterhin populärer werden. Immer mehr Entwickler und Firmen setzen sich mit Cross-Plattform-Frameworks auseinander, um effizient und qualitativ zu arbeiten. Dies gelingt mit der häufig als intuitiv bezeichneten Benutzeroberfläche sehr gut und ist ein Kernmerkmal des Frameworks. 

Wir bei Monstarlab sind weiterhin sehr gespannt über Flutter und haben bereits erfolgreiche Projekte mithilfe von Flutter geliefert. Lassen Sie sich beispielsweise von diesem Case inspirieren. 

Entwicklung einer News- & Community-App mit dem Deutschen BundeswehrVerband:App Entwicklung Flutter Case DBwV monstarlab

Quellen:

https://blog.logrocket.com
https://www.nomtek.com/blog/flutter-app-examples 
https://it-talents.de/it-wissen/was-ist-flutter/ 
https://venturebeat.com/
https://www.finanzfunke.com/flutter-und-react-native-die-zukunft-der-app-entwicklung/ 
https://pub.dev/packages/flutter_ui_toolkit 
https://hackr.io/blog/react-native-vs-flutter 
https://docs.microsoft.com/de-de/xamarin/get-started/what-is-xamarin 
https://kruschecompany.com/de/flutter-vs-react-native-wann-ist-welche-loesung-besser/ 
https://www.impuls1.de/flutter/#contra 
https://www.intelivita.com/blog/apps-made-with-flutter/ 

 

*HINWEIS: Aus Gründen der besseren Lesbarkeit wird bei Personenbezeichnungen und personenbezogenen Hauptwörtern auf dieser Website die männliche Form verwendet. Entsprechende Begriffe gelten im Sinne der Gleichbehandlung grundsätzlich für alle Geschlechter. Die verkürzte Sprachform hat nur redaktionelle Gründe und beinhaltet keine Wertung.

Um diese Website zu verbessern, verwenden wir Cookies. Für weitere Informationen lesen Sie bitte unsere Datenschutzerklärung. Um der Verwendung von Cookies auf dieser Website zuzustimmen, klicken Sie bitte auf "Zustimmen".