Vojtěch Mádr: Xamarin od A až do Z
Transcript of Vojtěch Mádr: Xamarin od A až do Z
![Page 1: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/1.jpg)
XAMARIN OD A AŽ DO ZVOJTĚCH MÁDR
![Page 2: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/2.jpg)
V kostce ?nebo v kostkách?
![Page 3: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/3.jpg)
About me
- Xamarin Developer - Od roku 2014 - Android/iOS/Windows - Enterprise & iOS aplikace - Propagátor Xamarin
![Page 4: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/4.jpg)
O společnosti eMan- Přední český dodavatel mobilních řešení - V top 3 ve vývoji mobilních aplikací v ČR - Zahájení činnosti: 2010 - Počet členů týmu: 50
![Page 5: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/5.jpg)
- Jak na věc aneb úvod do Xamarinu - Xamarin a jeho produkty - IDE - Xamarin Studio vs Visual Studio - Jak psát Xamarin.Droid a Xamarin.iOS aplikaci - Kde a jak to všechno využiji
Goals
![Page 6: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/6.jpg)
Multiplatformní vývoj aplikací
- HTML + CSS + Java script - Cordova - PhoneGAP
- C, C++ - Používá např. Google
- Xamarin
![Page 7: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/7.jpg)
How to start
- Pořídit si počítač - Navštívit web xamarin.com - Zvolit ideální licenci - Zvolit nejvhodnější IDE - Pročíst si základy na zvolené platformě (platformách) - Začít psát kód
![Page 8: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/8.jpg)
![Page 9: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/9.jpg)
Začátek
![Page 10: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/10.jpg)
Licence
Starter Indie Business Enterprise
Free 25$ M. 999$ Y. 1899$ Y.
Do 128Kb Xamarin Forms VS support
![Page 11: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/11.jpg)
Visual Studio
- Nejpokročilější framework pro vývoj - Pro build iOS aplikací potřeba přístup k
MacOS (Virtuálně nebo WIFI) - Podpora různých emulátorů pro Android - Xamarin Android Player
![Page 12: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/12.jpg)
Xamarin Studio- Free IDE - Podpora Windows, Mac OS
- Na Windows nelze buildit iOS - Základní pluginy - Podpora UNIT i UI testů - Budoucnost
- Integrace Roslyn - Sblížení s VS
![Page 13: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/13.jpg)
Ukázka
![Page 14: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/14.jpg)
Xamarin Studio
Spokojený uživatel Nespokojený uživatel
![Page 15: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/15.jpg)
Yudit, Nano nebo Vim
- Nepodporují Intellisence - Buildění pomocí MDTOOL - Nejlepší škola pro psaní MSBUILDů (Ideální pro CI)
![Page 16: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/16.jpg)
Releases
- Momentálně verze Xamarin 4.0 - Aktualizace probíhají v aktualizačních cyclech - https://releases.xamarin.com/
- Podpora nových verzi systému (Max do 14 dní) - https://blog.xamarin.com/
![Page 17: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/17.jpg)
Komponenty
- Knihovny pro Xamarin na NUGETu - Components Store
- Baliček obsahující kromě .dll knihoven i testovací zadání a
další infomace - mono xamarin-component.exe package <foldername> - Xamarin Insights - Xamarin Profiler
![Page 18: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/18.jpg)
Cloud? Ten testovací!
- UI testy pomocí frameworku podobného NUNIT testům - Nutnost mít v aplikací knihovnu, která zachytává příkazy
- S Xamarin 4 možnost neomezeného testování na real. zařízeních - Využití Xamarin Test Cloudu
- Služba pro testování aplikace na několika zařízeních
![Page 19: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/19.jpg)
(NE)bezpečí vývoje
- Xamarin je bezchybný software - Jiné chování stejného kódu ve VS a XS - Odlišná práce s resources - Chyba při deployi na různé zařízení - Odlišené chování knihoven (Android Support Libraries) - Každý den plný nových překvapení
![Page 20: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/20.jpg)
Jablko
- AOT kompilace kódu - Možnost bindování objective C knihoven
- Možnost využití Xcode pro layouty
![Page 21: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/21.jpg)
Droid
- JIT kompilace kódu - Je možné připojit nativní Java knihovny
- Bindings Library - Java Native Interface (JNI) - Potřeba velmi kvalitně napsané knihovny (Množství chyb)
- Layouty stejné jako pomocí Androidu
![Page 22: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/22.jpg)
Windows 10- Využití společného kódu také pro
- Windows 10 - Windows 8.1 RT - Windows Phone 8.1 RT - a další
- K buildění potřeba počítač s Win 10 - V Xamarin 4.0 podpora Win 10 pro
Forms
![Page 23: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/23.jpg)
Forms
![Page 24: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/24.jpg)
Ukázka
![Page 25: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/25.jpg)
PCL - Portable Class Libraries
- Efektivní způsob pro universální knihovny - Možnost psát 1 knihovnu pro všechno možné platformy - PCL knihovně připojíte jakoukoliv PCL knihovnu - Několik možných přístupů
- Pomocí IoC kontejneru - Pomocí Bootstraperu - Využití LAZY
![Page 26: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/26.jpg)
Ukázka
![Page 27: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/27.jpg)
PCL - Portable Class Libraries
- HTTPS://GITHUB.COM/AZURE/AZURE-MOBILE-APPS-NET-CLIENT/BLOB/MASTER/SDK/SRC/MICROSOFT.WINDOWSAZURE.MOBILESERVICES/PLATFORM/PLATFORM.CS
![Page 28: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/28.jpg)
Shared Project
- Core a UI část se spojí do jednoho .dll balíčku - Platformě závislé části se oddělují ve společné logice pomocí
PRECOMPILERU (znak #if) - Protože je kód v jednom balíčku, je složitější znovupoužití a
distribuce balíčku než v případě PCL
![Page 29: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/29.jpg)
IoT - Internet of things
- Komunikace (Můžeme psát 1x pro 3 platformy) - Bluetooth - TCP/IP - USB kabel
- Využití společného UI (např. pro technické aplikace není protřeba
složitá grafika)
![Page 30: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/30.jpg)
Enterprise & Corporate
- Využití práce s .NET technologiemi - Znovupoužitelnost kodu pro další aplikace (PCL) - Marketing, Licence, Image
![Page 31: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/31.jpg)
Thanks for team
![Page 32: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/32.jpg)
![Page 33: Vojtěch Mádr: Xamarin od A až do Z](https://reader033.fdocument.pub/reader033/viewer/2022051300/58ef88581a28ab8f388b45b5/html5/thumbnails/33.jpg)
Questions ?