multiplatformni vyvoj

12
Obecné Multiplatformní vývoj umožňuje jednoduchý, rychlý a škálovatelný vývoj mobilních aplikací pro různé platformy pomocí jednoho multiplatformního kódu zkompilovaného podle potřeb dané platformy. Výhodou multiplatformního vývoje je možnost sdílení kódu napříč všemi platformami, snadné vytvoření nativního UI dodržující standardy platformy a jednotnost designu aplikace. 1

Upload: nanooq-it

Post on 21-Jan-2018

87 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: Multiplatformni vyvoj

Obecné Multiplatformní vývoj umožňuje jednoduchý, rychlý a škálovatelný

vývoj mobilních aplikací pro různé platformy pomocí jednoho multiplatformního kódu zkompilovaného podle potřeb dané platformy.

Výhodou multiplatformního vývoje je možnost sdílení kódu napříč všemi platformami, snadné vytvoření nativního UI dodržující standardy platformy a jednotnost designu aplikace.

1

Page 2: Multiplatformni vyvoj

Xamarin Xamarin patří v současnosti mezi jedno z nejpoužívanějších

multiplatformních řešení. Xamarin je postaven na .NET a stojí za ním v současné době společnost Microsoft.

V nové verzi Visual Studia je Xamarin plně integrovaný.

2

Page 3: Multiplatformni vyvoj

SrovnáníVýhody:

Podpora Xamarin.forms - předdefinované nativní UI komponenty pro Android, iOS

Podpora funkcionalit nativní aplikace (Android fragmenty, iBeacons)

Snadná integrace do cloudu, zejména Windows Azure

Xamarin test cloud s dostupností mnoha zařízení pro testování aplikace

Objektově-orientovaná technologie postavená na C#, což umožňuje rychlejší běh aplikací a integraci Objective-C stávajících metod

Vhodný pro větší projekty a aplikace

3

Nevýhody:

Podpora Xamarin.forms - předdefinované nativní UI komponenty pro Android, iOS

Podpora funkcionalit nativní aplikace (Android fragmenty, iBeacons)

Snadná integrace do cloudu, zejména Windows Azure

Xamarin test cloud s dostupností mnoha zařízení pro testování aplikace

Objektově-orientovaná technologie postavená na C#, což umožňuje rychlejší běh aplikací a integraci Objective-C stávajících metod

Vhodný pro větší projekty a aplikace

Page 4: Multiplatformni vyvoj

React Native React Native je javascriptový multiplatformní framework vyvinutý

společností Facebook. Vývoj je založen na Javascriptu a React.js knihovně pro tvorbu uživatelských rozhraní.

Příklad implementace mobilního řešení Facebook app, Facebook messenger

4

Page 5: Multiplatformni vyvoj

SrovnáníVýhody:

Jednodušší tvorba nativního UI Integrace nativních komponent

podobných jazyku Objective C Podpora asynchronního

zpracování

5

Nevýhody:

Poměrně novodobý framework s menší komunitou vývojářů a podpůrné dokumentace

V současnosti nepodporuje širší množství knihoven nebo rozšíření pro podporu více nativních funkcionalit

Page 6: Multiplatformni vyvoj

PhoneGap PhoneGap je multiplatformní framework založen na technologiích

HTML5 a Javascript. Za vývojem stojí společnost Adobe.

6

Page 7: Multiplatformni vyvoj

SrovnáníVýhody:

Možnost vývoje v HTML5, CSS, Javascript

Akcelometr na měření výkonu Podpora geolokace Jednoduchá práce se Storage v

mobilním zařízení

7

Nevýhody:

Více sjednocený design UI pro iOS a Android platformu

Pomalejší výkon oproti konkurenčním JS frameworkům

Page 8: Multiplatformni vyvoj

HTML5 Vývoj mobilní aplikace pomocí HTML5 jako responzivní verze

webového rozhraní.

Příklad implementace mobilního řešení Google Docs

8

Page 9: Multiplatformni vyvoj

SrovnáníVýhody:

Rychlý vývoj aplikace Není potřebná optimalizace pro

různé platformy

9

Nevýhody:

Design jako webová aplikace Rychlost dle připojení k

internetu Chybějící nativní funkcionalita

(offline režim, push notifikace…)

Page 10: Multiplatformni vyvoj

Nativní vývoj iOS (Swift, Objective C) Android (Java) Windows Phone (.NET)

10

Page 11: Multiplatformni vyvoj

SrovnáníVýhody:

Nativní prvky pro každou platformu Rychlý výkon mobilních aplikací Lepší optimalizace pro různé

tabletové a mobilní zařízení

11

Nevýhody:

Delší doba vývoje Návrh uživatelského rozhraní

pro každou platformu zvlášť

Page 12: Multiplatformni vyvoj

Doporučení Navrhované řešení závisí na požadavcích implementace a finální funkcionalitě

mobilní aplikace. Pokud se jedná o jednoduchou, menší aplikaci, která má většinu logiky zpracované na straně serveru a na straně klienta přijímá pouze data je vhodným řešením implementace multiplatformní framework.

Na aplikace, které jsou datově a aplikačně nenáročné doporučujeme React Native framework.

Aplikace, které zpracovávají větší množství dat a je třeba je optimalizovat z pohledu výkonu, ale mají jednodušší a nenáročné uživatelské rozhraní, více jednotné pro obě platformy je vhodným řešením Xamarin framework nebo PhoneGap framework.

Pokud se však jedná o aplikaci, která zpracovává logiku i na straně klienta, dělá výpočty, je datově náročná nebo pracuje s citlivými hodnotamy je vhodnou volbou nativní řešení. Také z pohledu správy a přístupu velkého počtu uživatelů v jednom čase nebo vykreslování většího množství dat v reálném čase.

12