Diversity w polskim IT
Wilton Ribeiro
Wilton RibeiroSoftware Engineering Student @ Federal University of Ceará

Jak i dlaczego uczę się Fluttera?

Poznaj zalety programowania we Flutterze i naucz się to robić w prosty sposób.
15.08.20204 min
Jak i dlaczego uczę się Fluttera?

W tym artykule opowiem o tym, dlaczego zacząłem uczyć się Fluttera i języka Dart. Mam nadzieję, że pomogę Ci rozpocząć i kontynuować podróż z tym frameworkiem Googla do mobilnego developmentu. Do dzieła!

Moje doświadczenia jako programisty mobilnego

Jestem studentem inżynierii oprogramowania, ale już w liceum miałem pierwsze spotkanie z mobilnym developmentem i wierzcie mi lub nie, to było w Windows Phone (w tym czasie naprawdę kochałem ten system operacyjny). Doświadczenia z WP były niesamowite, kochałem język C# i budowanie w nim aplikacji. Niestety, WP został wycofany przez Microsoft, więc musiałem podjąć jedyną możliwą decyzję, przenieść się na Androida.

Już wcześniej budowałem aplikacje na Androida, używając Javy i Kotlina, nie miałem więc na co narzekać. Sposób budowania natywnych aplikacji zawsze był dla mnie fascynujący, w tym sposób budowania UI (interfejsu użytkownika). No więc nasuwa się pytanie - jak trafiłeś na Fluttera?

Miłość od pierwszego wejrzenia


Po uruchomieniu mojej pierwszej flutterowej aplikacji

Jeśli jeszcze nie wiesz, co to jest Flutter, pozwól, że Ci wytłumaczę. Flutter to mobilny framework UI od Googla, do tworzenia wysokiej jakości natywnych interfejsów na iOS i Androida w rekordowym czasie. Używając Fluttera, możesz pisać tym samym kodem bazowym (w Dart) natywne aplikacje na obu platformach. Brałem udział w projekcie, w którym trzeba było zbudować aplikację na iOS oraz Androida, ale bez wsparcia dewelopera Swift lub Object-C w zespole. Pomyślałem więc o React Native i Flutterze.

Pierwszą próbą był React Native. Moje doświadczenie z RN było krótkie (tak więc proszę nie oceniać), ale jedną z cech, która mi się nie podobała, była duża zależność od bibliotek trzecich. Wiele zadań - od nawigacji pomiędzy ekranami do użycia komponentów UI - wymaga importowania paczek do projektu.

Moją drugą próbą był Flutter i cóż, nie mogę powiedzieć nic więcej, niż że absolutnie go uwielbiam. Na pierwszy rzut oka wydawało mi się, że nauka Darta potrwa długo i może być problemem, ale nie. Język Dart jest, przynajmniej dla mnie - kogoś, kto już jest ze świata języków z paradygmatem obiektowym - był niezwykle intuicyjny i łatwy do zrozumienia.

Najbardziej moją uwagę zwrócił sposób budowania interfejsu użytkownika! Wszystkie popularne widżety znormalizowane przez Material Design lub iOS z Cupertino są dostępne w Flutterze. Wystarczy zaimportować inną bibliotekę, jeśli potrzebujesz naprawdę konkretnego widgetu interfejsu użytkownika, a nawet w tym przypadku naprawdę łatwo jest utworzyć niestandardowy widget za pomocą Fluttera. Dokumentacje o każdym widżecie i klasach Flutter są bardzo szczegółowe i zrozumiałe dla wszystkich programistów.

Jak się uczę?

Zawsze uwielbiałem testować samego siebie. Nie po to, by udowodnić, że jestem w stanie coś zrobić, ale aby udowodnić, że jestem w stanie próbować do skutku, nawet w obliczu porażki. Kiedy zdałem sobie sprawę, że Flutter to świetny wybór do nauki, następnym krokiem było jej rozpoczęcie, a najskuteczniejsza nauka to praktyka. Jak mówiłem wcześniej, tworzenie prostych aplikacji może być bardzo łatwe, zwłaszcza jeśli skupiasz się zawsze na tym samym rodzaju aplikacji, lub rozwiązujesz ten sam problem. Zacząłem więc od początku.

Pierwszą rzeczą, jaką zrobiłem, było zbudowanie prostej aplikacji i zabawa funkcjami Flutter, takimi jak nawigacja między ekranami, setState(), zrozumienie StateLessWidget, StateFullWidget, inheritedWidget i innych. To świetny sposób na poznanie, nawet bardziej powierzchownie, tego, co oferuje framework. Tak więc, kiedy zdałem sobie sprawę, że wiem już wystarczająco dużo, aby kontynuować, zacząłem z bardziej ambitnymi projektami.

Tworząc oprogramowanie, niektóre problemy pojawią się dopiero wtedy, gdy projekt stanie się odpowiednio większy, więc ciągłe trzymanie się małych projektów, nie poprawi już żadnych nabytych umiejętności i nie pomoże Ci poznać żadnych nowych rozwiązań. Wiedząc o tym, szukałem koncepcji interfejsów użytkownika, aby symulować je za pomocą Fluttera. Podzielę się tutaj kilkoma stworzonymi przez mnie koncepcjami:


Inspiracją był Grocery store od Cuberto

Koncepcja aplikacji stworzona za pomocą Flutter przy użyciu języka programowania Dart, inspirowana Groceries Shopping App Interaction. …Github.com


Kolejna:


Inspirowana Tasty Burger od Tubik

Koncepcja aplikacji stworzona za pomocą Flutter inspirowanej Tasty Burger. - wiltonribeiro / hamburger_fluttergithub.com

Taka zabawa pomogła mi w praktyce aplikować we Flutterze takie rzeczy, jak wzorce projektowe, test case'y, animacje, strumienie, zarządzanie stanem, projektowanie responsywne i inne świetne rzeczy, które pozwalają na stworzenie spersonalizowanych widgetów.

Kilka wskazówek…

Zacznij od początku, to znaczy nie pomijaj żadnych kroków w trakcie nauki Fluttera lub jakiejkolwiek innej technologii. Gdy nie rozumiesz prostej koncepcji, może to spowodować naprawdę większy problem, gdy już przejdziesz do czegoś bardziej złożonego.

Bądź częścią społeczności. Dziś jestem członkiem czterech grup Dartowych/Flutterych na Telegramie, śledzę Flutter Community na Twitterze, Gitterze, Githubie, Reddicie i innych mediach społecznościowych. Jeśli chcesz dowiedzieć się więcej o społeczności Flutter i ich mediach społecznościowych, dalej znajdziesz link.

Korzystaj z treści, które Flutter już Ci udostępnia. Dokumentacja Fluttera jest niesamowita, a mimo to, jeśli chcesz czegoś bardziej interaktywnego, zespół Flutter ma świetny kanał na YouTube.

To by było na tyle. Mam nadzieję, że spodobał Ci się ten artykuł. Skontaktuj się ze mną za pośrednictwem Twittera lub LinkedIn. Pa pa!


Oryginał artykułu w języku angielskim możesz przeczytać tutaj.

<p>Loading...</p>