Flutter - jedna aplikacja dwie platformy
Strony www Olsztyn
  • Oferta
    • Strony internetowe
    • Sklepy internetowe
    • Aplikacje mobilne
  • Realizacje
  • Blog
  • Współpraca
  • Kontakt
  • EN
  1. Strona główna
  2. Blog
  3. Aplikacja mobilna
  4. Flutter - jedna aplikacja dwie platformy
 
 

Flutter - jedna aplikacja dwie platformy

@Mobilesoft 31 March 2021 #mobile #android #ios

Czy warto zainteresować się rozwiązaniami hybrydowymi?

Dobrą praktyką jest analiza rozwiązań pozwalających zaoszczędzić czas i pieniądze. Wiele osób kurczowo trzyma się swoich technologi i nie chce poznawać nowości. Niestety przy takim podejściu wystarczy kilka lat i możemy być daleko w tyle w stosunku do konkurencji.

Dla hybrydowych aplikacji mamy dostępnych kilka możliwości, lecz chciałbym przybliżyć dwie z nich. Mianowicie są to React Native oraz tytułowy Flutter.

Pierwszy z nich stworzony przez firmę Facebook Inc. oparty jest o język JavaScript. Pozwala na dostarczenie oprogramowania jedocześnie na platformy takie jak:

  • Android,
  • Android TV,
  • iOS,
  • macOS,
  • tvOS,
  • Web,
  • Windows.

Prężnie rozwijany przez ponad 2 tysiące developerów, wykorzystywany przez ponad 600 tysięcy osób. Sposób stylowania aplikacji jest bardzo zbliżony do tego z CSS. Mamy dostęp do mnóstwa bibliotek co jeszcze bardziej ułatwia tworzenie prostych aplikacji.

 

Flutter

Flutter jest dostępny od niedawna. Oparty o język dart, który nie każdemu może pasować. Stworzone aplikacje można uruchomić na platformach:

  • Android
  • iOS
  • macOS
  • Linux
  • Windows
  • Web

Posiada ogromną ilość dodatków i bibliotek. Wsparcie dla elementów stylowanych w Material Design a także Cupertino (stylowanie iOS). Tak jak React Native, oparty jest na programowaniu reaktywnym, co pozwala to na renderowanie zawsze aktualnych widoków. 

 

Ile można zaoszczędzić na Flutterze

Jeden kod źródłowy dostępny na wiele platform jest kuszącą propozycją pod względem finansowym jak i czasowym. Jeżeli chcemy stworzyć szybko prostą aplikację składającą się z kilku widoków możliwą do uruchomienia na wielu platformach warto przeanalizować Fluttera. Jeżeli mamy do dyspozycji zespół dobrze znający tę technologię to nie ma się nad czym zastanawiać. Jednak jak chcemy sami stworzyć aplikację lub zbudować zespół trzeba rozważyć kilka znaczących kwestii.

Pamiętaj, że czasami problem który chcesz rozwiązać może spowodować wydłużenie czasu realizacji projektu w technologii hybrydowej, czemu? Nie ma złotego środka, nie ma jednej technologii do wszystkiego. Mimo mocno rozbudowanych zasobów Fluttera w postaci bibliotek i dodatków istnieją spore ograniczenia. W niektórych sytuacjach bardziej opłaca się pochylić nad natywnymi rozwiązaniami, szczególnie jak mamy duże doświadczenie w tych technologiach lub sprawny i doświadczony zespół.

Jak już pewnie się domyślasz:

1x Android + 1x iOS != 2x Flutter

Chodzi tutaj o złożoność czasową, dwie aplikacje natywne nie zajmą tyle samo czasu co 2 aplikacje hybrydowe. Mogłoby się wydawać że tak, wszystko zależy od sytuacji i naszych potrzeb.

Aktualnie nie ma wielu doświadczonych programistów Flutter, więc nie łatwo jest zbudować dobry zespół pozwalający na sprawną "produkcję" rozwiązań.

 

Pozytywy Fluttera

  • Jeden kod źródłowy przeznaczony na dwie platform.
  • Automatyczne skalowanie ikon w zależności od platformy
  • Wspólne wersje aplikacji
  • Łatwość automatyzacji publikowania aplikacji (poprzez fastlane)
  • Edycja projektu w Android Studio lub Visual Studio Code
  • Dostęp do widżetów stylowanych pod system Android oraz iOS
  • Wbudowane narzędzia developerskie
  • Wydajność zbliżona do rozwiązań natywnych
  • Przejrzysta dokumentacja ułatwiająca naukę dla developerów Android i iOS
  • Mnogość bibliotek.

 

Funkcjonalności jakie można zaimplementować we Flutter

Przede wszystkim należy wspomnieć o oficjalnych bibliotekach od fluttera. Ich lista dostępna jest na github:

https://github.com/flutter/plugins

Poniżej przedstawię kilka ciekawszych.

  1. Google Maps - Flutter udostępnia całkiem niezłą bibliotekę do map. Pozwala ona na zagnieżdżenie mapy, dodanie znaczników, rysowanie lini, wielokątów i okręgów, animowanie kamery, zmienianie przybliżenia, centrowanie mapy.
  2. Shared Preferences - ci którzy programowali na system Android wiedzą o co chodzi, jest to biblioteka pozwalająca na łatwy dostęp do lokalnej pamięci. Dane przechowywane są za pomocą schematu klucz-wartość.
  3. FlutterFire - czyli Firebase dla Flutter, dostęp do powiadomień, magazynu danych, analityki i nie tylko.
  4. easy_localization - łatwy sposób na implementacje tłumaczeń do aplikacji mobilnej.

 

MOBILESOFT
Tel: +48 22 390 63 51
Email: kontakt@mobile-soft.pl
WIĘCEJ INFORMACJI
  • Współpraca
  • FAQ
  • Polityka prywatności
  • Kontakt
NASZE ROZWIĄZANIA
  • System CMS
  • Dokumenty realizacji
  • Realizacje
NASZA OFERTA
  • Strony internetowe
  • Aplikacje mobline
  • Sklepy internetowe
  • Miasta
Copyright © 2020
MOBILEOFT - projektowanie stron internetowych