Flutter oder Nativ?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Hi, ich glaube hier kann ich helfen!

Habe letztes Jahr auf meiner Uni ein Modul besucht, wo wir über verschiedene Möglichkeiten der Cross Plattform Programmierung gelernt haben und im Zuge dessen sollten wir eine App programmieren, mit einem Framework unserer Wahl. Haben uns für Flutter entschieden, weil es einfach aussah. Damals war noch der Export auf Web in den Kinderschuhen. Seitdem bin ich bei mir auf der Arbeit noch in einem Team, das sich Flutter im Rahmen eines richtigen Projektes anguckt; wir sind so 10 Leute.

Kurz: Wenn du auf iOS, Android und im Web programmieren willst, nimm Flutter.

Lang: Es gibt einen Unterschied zwischen verschiedenen Frameworks, die so in dem Rahmen bekannt sind. Ob etwas nativ kompiliert wird ist natürlich ein sehr wichtiger Aspekt. Zeug wie Xamarin emuliert einfach nur eine WebPage auf jedem Endgerät. Das macht das Programmieren etwas einfacher, aber ist halt echt kacke für die Performance. Flutter kompiliert nativ auf iOS, Android, ins Web und auf eingebettete Systeme (da Flutter auf Dart aufbaut und Dart sich in C, C++ und JavaScript nativ kompilieren lässt afaik). Zudem kann es sogar auf Xamarin exportiert werden. Du solltest dir auf jeden Fall angucken, wie man verschiedene Betriebssysteme einbezieht. Bei Flutter unterscheidet man da zwei Konzepte.

"Adaptive UI" ist eine UI, die sich an das Endgerät anpasst. Beispielsweise sollte man eine iOS App nicht mit Material UI Design füllen, auch wenn es mit Flutter ohne Probleme möglich ist. Um etwas adaptiv zu machen, gibt es in Flutter integrierte Checks nach dem Betriebssystem z.B.

"Responsive UI" ist das, was man ausm WebDev Bereich kennt. Im Groben guckt man einfach wie viel Platz man hat und ändert die UI entsprechend. So kann man im Web z.B. den (Side)Drawer einfach permanent offen lassen.

Zu deiner letzten Frage: du musst nicht nativ programmieren lernen, um Flutter besser zu verstehen. Falls du tatsächlich im Verlauf deiner Programmierung mit nativem Code in Verbindung kommen wirst (was eigentlich nie der Fall sein sollte), kann man das dann einfach lernen sobald es nötig ist.

Hier ist eine Playlist, die ich zum Lernen von Flutter nur empfehlen kann.

Also ich persönlich bin total überzeugt von Flutter! Ich vermute, dass dir das Vorwissen von Swift bei Flutter nur bedingt helfen wird. Flutter ist aber eigentlich sehr intuitiv, sobald man erstmal ein wenig Routine hat (Aufjedenfall auf Organisation der Widgets achten xD)

Zu dem Thema Native oder Flutter gibt es aber auch viele Youtube Videos, wo es um Vorteile und Nachteile geht.

https://www.youtube.com/watch?v=H6TaMuRzbSk

https://www.youtube.com/watch?v=JdXdNx6aJQI

https://www.youtube.com/watch?v=y-6V0IWynzc