Flutter, czyli przyszłość aplikacji mobilnych.

...

Żyjemy w dobie smartfonów. Nie wyobrażamy sobie życia bez używania aplikacji mobilnych, które znacząco ułatwiają nasze życie. Przez ten fakt programiści na całym świecie szukają coraz to nowszych rozwiązań, by ich tworzenie było prostsze, bardziej efektywne i wydajne. Dlatego właśnie powstał Flutter - oprogramowanie developerskie, które zawojowało świat. Skąd się wziął i jak wygląda jego sytuacja na rynku? Na to odpowiemy sobie w tekście poniżej.


Aplikacje internetowe, a aplikacje natywne.

...

Żeby powiedzieć na jakie problemy Flutter jest rozwiązaniem, musimy sobie powiedzieć czym są aplikacje internetowe i aplikacje natywne.

Aplikacje internetowe to tak naprawdę strony internetowe przerobione na aplikacje mobilne. Piszemy je za pomocą języków webowych - czyli HTML, CSS i JavaScript (możemy też korzystać z frameworków). Wystarczy wykonać parę innych technicznych rzeczy, w które teraz nie będę się zagłębiał i voila - możemy zainstalować naszą aplikację na telefonie. Oczywiście sposób ten posiada swoje wady i zalety, a najważniejsze z nich to:

  • Niski próg wejścia, ponieważ korzystamy ze znanych, dość podstawowych języków.
  • Unikają podziałów, ponieważ aplikacje internetowe działają na każdym systemie operacyjnym.
  • Wykorzystują jedynie te zasoby telefonu, które zarezerwuje przeglądarka, więc nie są tak szybkie i efektywne, jak aplikacje natywne.

Aplikacje natywne to aplikacje dedykowane na dany system operacyjny. Przykładowo - takie aplikacje na iOS możemy pisać w Swifcie, a na Androida w Javie lub Xamarinie. Tak samo jak aplikacje internetowe mają swoję wady i zalety, m.in.:

  • Stosunkowo wysoki próg wejścia, ponieważ musimy się uczyć nowego języka.
  • Stwarzają podziały, ponieważ aplikacji na iOS nie odpalimy na Androidzie i odwrotnie.
  • Mają jednak pełny dostęp do zasobów telefonu i same sobie mogą zarezerwować daną ich ilość, dlatego są szybsze i bardziej wydajne.

Flutter łączy zalety obu - pozwala za pomocą jednego kodu tworzyć aplikacje natywne zarówno na iOS, jak i Androida.


Kiedy i przez kogo został stworzony?

W dzisiejszych czasach topowe firmy prześcigają się nieustannie w kreowaniu nowych technologii i rozwiązań, dlatego nie dziwi fakt, że Flutter został stworzony przez Google. Gigant z Mountain View wypuścił go na rynek w maju 2017 roku, więc jest on młodym językiem, który cały czas się rozwija. Flutter to zestaw narzędzi i innowacji developerskich, które pozwalają nam pisać aplikacje mobilne, nie jest on językiem programowania. Kod piszemy za pomocą języka, jakim jest Dart - kolejne rozwiązanie zaproponowane przez Google.

...
Gigant z Mountain View nie odbiega od konkurencjii i nieustannie szuka nowych rozwiązań.

Dart to język programowania zorientowany obiektowo. Po wypuszczeniu na rynek w 2011 roku miał zbyt dobrą konkurencję na osiągnięcie sukcesu - C++, C#, czy Java były zbyt rozwinięte, by dać się rozwinąć czemuś nowemu. Dopiero wypuszczenie Fluttera go “wskrzesiło”.


Jak wyglądają inne języki służące do tworzenia aplikacji mobilnych w porównaniu z Flutterem?

Patrząc na statystyki opublikowane przez GitHub'a możemy dojść do wniosku, że wielu programistów złapało zajawkę na Fluttera.

Największy przyrost projektów w Darcie w 3 kwartale 2019 r.

Dart dzięki Flutterowi zaliczył przyrost o 532%.

Swift spada, Flutter rośnie

Według statystyk GitHuba Swift cały czas ma ujemne przyrosty, podczas gdy Dart dzięki Flutterowi rośnie w siłę.

Jedyny pewniak - Java

Co prawda została prześcignięta przez Pythona i plausuje się na trzecim miejscu wśród innych języków, jednak nic nie wskazuje na to, by miała zostać zdetronizowana.


Flutter vs React Native

...

Podobnych rozwiązań do Fluttera znajdziemy oczywiście więcej. Jednym z najlepszych jest React Native. Dlaczego więc programiści na całym świecie załapali zajawkę na Fluttera? W poniższej tabeli możecie zobaczyć zestawienie tych dwóch technologii.

Flutter React Native
Wysoki próg wejścia Niski próg wejścia
Stosunkowo mała ilość feature’ów Więcej i bardziej rozwinięte feature’y
Niepewna przyszłość Przetarty szlak
Nisza na rynku, mała ilość miejsc pracy
na stanowisko z użyciem tego języka
Powodzenie na rynku
Szybsze i bardziej wydajne aplikacje Wolniejsze aplikacje

Widzimy, że React Native bije na głowę pod wieloma względami Fluttera, jednak argumentem Fluttera, który przelewa szalę jest wydajność aplikacji.


Podsumowanie

Największą wadą Fluttera jest jego wiek. Patrząc choćby na język, jakim się posługujemy, by za jego pomocą tworzyć aplikacje - Dart - nie możemy być pewni jak długo ta zajawka się utrzyma. Jego przyszłość, tak jak każdej technologii na rynku, jest niepewna. Dlatego szefowie w firmach wolą stawiać na pewniaki - jakim jest chociażby React Native. Nie mniej jednak Flutter ma wiele do zaoferowania. Przemawia za nim chociażby wydajność aplikacji oraz to, że naprawdę trafił do serc programistów, którzy podtrzymują vibe, dzięki czemu Dart zalicza obecnie okres świetności. Jestem jeszcze bardzo młodym i niedoświadczonym programistą, wielu rzeczy nie wiem, ale Flutter trafił do mnie także. Tworzenie aplikacji w środowisku Android Studio, podglądanie efektów mojej pracy w AVD (Android Virtual Device) i sama nauka Darta sprawia mi ogromny fun. Zarówna ja, jak i inni widzimy, że jedno jest pewne - Flutter ma ogromny potencjał i powinniśmy dać mu szansę, ponieważ za parę lat może stać się jednym z głównych, topowych zawodników w świecie aplikacji mobilnych.