Development: budowa gry w Firebase<\/span><\/h3>\n\n\n\nPlatforma Firebase zosta\u0142a zbudowana z my\u015bl\u0105 o minimalizacji nak\u0142adu pracy na backend aplikacji i obs\u0142ug\u0119 serwer\u00f3w. Pozwala minimalizowa\u0107 czas potrzebny na utrzymanie infrastruktury dzi\u0119ki mo\u017cliwo\u015bci wygodnego zarz\u0105dzania maszynami z poziomu kodu. Wspiera <\/span>przenoszenie si\u0142 i pok\u0142ad\u00f3w kreatywno\u015bci programist\u00f3w na rozw\u00f3j gry i zwi\u0119kszanie poziomu jej atrakcyjno\u015bci. <\/b>To daje te\u017c mo\u017cliwo\u015b\u0107 prowadzenia <\/span>szybkiego developmentu, testowania i ekspresowego wdra\u017cania nowo\u015bci na wersj\u0119 produkcyjn\u0105<\/b>.<\/span><\/p>\n\n\n\nW portfolio us\u0142ug Firebase s\u0142u\u017c\u0105cych budowie aplikacji znajduj\u0105 si\u0119:<\/span><\/p>\n\n\n\n- Cloud Firestore<\/b> \u2013 hostowana w chmurze baza danych NoSQL, kt\u00f3ra zapewnia synchronizacj\u0119 na \u017cywo, obs\u0142ug\u0119 offline oraz wysoce wydajn\u0105 obs\u0142ug\u0119 zapyta\u0144;<\/span><\/li>
- Firebase ML<\/b> \u2013 funkcje uczenia maszynowego, kt\u00f3re niedu\u017cym nak\u0142adem czasu i wiedzy, pozwalaj\u0105 zaimplementowa\u0107 modele ML pracuj\u0105ce na zwi\u0119kszenie atrakcyjno\u015bci aplikacji,<\/span><\/li>
- Cloud Functions <\/b>\u2013 bezserwerowe \u015brodowisko wykonawcze (execution environment) s\u0142u\u017c\u0105ce do tworzenia i \u0142\u0105czenia us\u0142ug w chmurze za pomoc\u0105 prostych funkcji,<\/span><\/li>
- Authentication<\/b> \u2013 us\u0142uga weryfikacji u\u017cytkownika obejmuj\u0105ca r\u00f3\u017cne metody uwierzytelniania, np. poprzez mail i has\u0142o, konto Google czy profil Facebook,<\/span><\/li>
- Hosting<\/b> \u2013 zestaw narz\u0119dzi hostingowych, obejmuj\u0105cy m.in. CDN (Content Delivery Network, us\u0142ug\u0119 zapewniaj\u0105c\u0105 wysok\u0105 dost\u0119pno\u015b\u0107 i wydajno\u015b\u0107) czy bezp\u0142atny certyfikat bezpiecze\u0144stwa SSL,<\/span><\/li>
- Cloud Storage <\/b>\u2013 us\u0142uga bezpiecznego przechowywania na du\u017c\u0105 skal\u0119 danych i plik\u00f3w takich jak tre\u015bci generowane przez u\u017cytkownik\u00f3w, obrazy, nagrania audio czy wideo,<\/span><\/li>
- Realtime Database<\/b> \u2013 baza danych o niskim op\u00f3\u017anieniu dedykowana produktom, kt\u00f3re wymagaj\u0105 synchronizacji status\u00f3w pomi\u0119dzy klientami w czasie rzeczywistym.<\/span><\/li><\/ul>\n\n\n\n
Quality: zapewnienie wysokiej jako\u015bci gry mobilnej<\/span><\/h3>\n\n\n\nW\u015br\u00f3d jednogwiazdkowych opinii gier w sklepach online (np. Google Play), 42% dotyczy z\u0142ego funkcjonowania aplikacji \u2013 tego, \u017ce wolno dzia\u0142a, zawiesza si\u0119 lub posiada b\u0142\u0119dy. Natomiast 72% u\u017cytkownik\u00f3w wystawiaj\u0105cych najwy\u017csze, pi\u0119ciogwiazdkowe opinie, argumentuje, \u017ce gra dzia\u0142a p\u0142ynnie, szybko i bez zarzutu. Dlatego istotne jest prowadzenie test\u00f3w jako\u015bci, kt\u00f3re pozwol\u0105 namierzy\u0107 problemy z funkcjonowaniem gry mobilnej. <\/span><\/p>\n\n\n\nJest to bardzo wa\u017cny, jednak problematyczny obszar: <\/span>prowadzenie test\u00f3w manualnych gier jest kosztowne<\/b> (trzeba przej\u015b\u0107 przez ka\u017cdy scenariusz i poziom oraz powtarza\u0107 testy przy okazji nast\u0119pnych aktualizacji czy dodawania nowych funkcjonalno\u015bci), <\/span>a popularne narz\u0119dzia test\u00f3w automatycznych<\/b> (np. UI Automator, XUI Test, Espresso) <\/span>nie dzia\u0142aj\u0105 w przypadku gier mobilnych<\/b>. Firebase rozwi\u0105zuje ten dylemat za pomoc\u0105 dost\u0119pnych us\u0142ug do prowadzenia test\u00f3w jako\u015bci i namierzania b\u0142\u0119d\u00f3w:<\/span><\/p>\n\n\n\n- Crashlytics<\/b> \u2013 narz\u0119dzie raportowania awarii, kt\u00f3re \u015bledzi wszystkie problemy wyst\u0119puj\u0105ce w grze oraz m.in. reakcje u\u017cytkownik\u00f3w na pojawiaj\u0105ce si\u0119 b\u0142\u0119dy; dane s\u0105 przedstawiane za pomoc\u0105 czytelnego dashboardu, a b\u0142\u0119dy mo\u017cna \u0142atwo namierzy\u0107 w kodzie gry dzi\u0119ki plikom stack traces; Crashlytics pozwala ustawia\u0107 powiadomienia o wyst\u0105pieniu b\u0142\u0119d\u00f3w,<\/span><\/li>
- Performance Monitoring <\/b>\u2013 narz\u0119dzie monitoruj\u0105ce wydajno\u015b\u0107 aplikacji, pozwala m.in. kontrolowa\u0107 czas uruchamiania produktu czy monitorowa\u0107 \u017c\u0105dania HTTP bez konieczno\u015bci pisania dodatkowego kodu,<\/span><\/li>
- Test Lab<\/b> \u2013 us\u0142uga testowania gier na fizycznych i wirtualnych urz\u0105dzeniach mobilnych; pozwala prowadzi\u0107 testy na ponad 1000 urz\u0105dze\u0144 z r\u00f3\u017cnymi systemami operacyjnymi i wersjami, o r\u00f3\u017cnej specyfikacji technicznej, lokalizacji, j\u0119zyku, wymiarach czy rozdzielczo\u015bci ekranu; po przeprowadzeniu test\u00f3w otrzymuje si\u0119 pe\u0142en raport ze statystykami, metrykami wydajno\u015bci, czasem \u0142adowania, zu\u017cyciem CPU czy pami\u0119ci \u2013 wszystko zsynchronizowane z nagraniami wideo uruchomionej gry,<\/span><\/li>
- App Distribution<\/b> \u2013 us\u0142uga przesy\u0142ania przedpremierowej wersji aplikacji do grupy zaufanych tester\u00f3w Firebase.<\/span><\/li><\/ul>\n\n\n\n