V minulých částech jsme měli možnost si vyzkoušet základní aplikaci v Xamarin i Visual studio projektu. Předtím než se začneme zabývat kroky k vytvoření komplexnější aplikace se podíváme postupně na strukturu nejdříve iOS, poté i Android projektu.
Xamarin: Struktura iOS projektu (díl 4)
Základním kamenem Xamarin aplikací je jako v případě jiných projektů v dotnet rodině tzv. Solution, která se skládá z Projektů. Projekty se od sebe liší knihovnami a funkcemi a mohou být např. typu iOS, Android, WP nebo PCL či Shared.
Každý projekt obsahuje položky Properties a References. Položka Properties je tvořená souborem AssemblyInfo, která specifikuje informace a verzi projektu. V References se nalézají všechny přidružené lokální knihovny, projekty a nuget balíčky, které jsou napojené na daný projekt.
Asset Catalogs
Ikona AssetCatalogs sdružuje všechny AssetCatalogy, ve kterých se schovávají grafické a datové zdroje aplikace např. ikonky aplikace, obrázek pro splashscreen atd. Struktura je jednoduchá.
Komponenty
Komponenty jsou speciální části aplikace, které pocházejí z dílny Xamarinu a dají se přidat přes Xamarin Component Store. Skládají se z nuget balíčku, jednoduchého příkladu jak ho používat a grafiky. Balíčků je celá řada a jsou buď zadarmo nebo za jednorázový poplatek.
Ostatní
Zbytek projektu je tvořen těmito třidami a soubory:
- AppDelegate – obsahuje metody, které tvoří životní cyklus iOS aplikace
- Main.Storyboard – soubor s grafickou definicí obrazovek a jejich propojením. Jednotlivé obrazovky se dají také tvořit v souborech XIB
- ViewController – soubor obsahující logiku pro každou obrazovku
- Main – vstupní bod do aplikace
- Info.plist – soubor, ve kterém se vyplňují informace o aplikaci. Mezi ně patří např. nejnižší podporovaná verze, číslo buildu, podporované zařízení či zapnutí nebo vypnutí podpory Push notifikací
Další krok
V dalším díle se můžete těšit na popis struktury Android projektu.
Předchozí díly seriálu:
Xamarin: Hello world ve Visual Studiu (díl 3)
Xamarin: Představujeme nástroj pro multiplatformní vývoj mobilních aplikací (díl 1)