Co je Xamarin?

Snímky obrazovky ukázkové aplikace Xamarin v iOS a Androidu

Xamarin je open source platforma pro vytváření moderních a výkonných aplikací pro iOS, Android a Windows s využitím .net. Xamarin je abstraktní vrstva, která spravuje komunikaci sdíleného kódu se základním kódem platformy. Xamarin běží ve spravovaném prostředí, které poskytuje pohodlí jako přidělování paměti a uvolňování paměti.

Xamarin umožňuje vývojářům sdílet průměrnou 90% svých aplikací napříč platformami. Tento model umožňuje vývojářům psát veškerou obchodní logiku v jednom jazyce (nebo znovu použít existující kód aplikace), ale dosáhnout nativního výkonu, vzhledu a chování na jednotlivých platformách.

Aplikace Xamarin můžou být napsané na počítačích PC nebo Mac a kompilovat do nativních balíčků aplikací, jako je soubor . apk v Androidu nebo soubor . ipa v systému iOS.

Poznámka

Kompilace a nasazení aplikací pro iOS v současnosti vyžaduje počítač s MacOS. Další informace o požadavcích na vývoj najdete v tématu požadavky na systém.

Kdo Xamarin je určen pro

Xamarin je určen pro vývojáře s následujícími cíli:

  • Sdílení kódu, testování a obchodní logiky napříč platformami.
  • Vytvářejte aplikace pro různé platformy v jazyce C# pomocí Visual Studio.

Jak Xamarin funguje

Diagram architektury Xamarin

Diagram znázorňuje celkovou architekturu aplikace Xamarin pro různé platformy. Xamarin umožňuje vytvořit nativní uživatelské rozhraní na každé platformě a napsat obchodní logiku v jazyce C#, která je sdílená napříč platformami. Ve většině případů je 80% kódu aplikace sdílet pomocí Xamarin.

Xamarin je postaven na rozhraní .NET, které automaticky zpracovává úlohy jako přidělování paměti, uvolňování paměti a interoperabilitu se základními platformami.

Další informace o architektuře specifické pro platformu najdete v tématu Xamarin. Android a Xamarin. iOS.

Přidané funkce

Xamarin kombinuje možnosti nativních platforem a přidává funkce, které zahrnují:

  1. Kompletní Vazba pro základní sady SDK – Xamarin obsahuje vazby pro téměř celé základní sady SDK platforem v iOS i Androidu. Kromě toho jsou tyto vazby silně typované, což znamená, že je snadné je Procházet a používat a zajistit robustní kontrolu typu v době kompilace a během vývoje. Vazby silného typu vedou k méně běhovým chybám a vyšším aplikacím kvality.
  2. Cíl – c, Java, c a C++ Interop – Xamarin poskytuje zařízení pro přímé vyvolání cílů – c, Java, c a c++, což vám dává možnost použít si nejrůznější kód třetí strany. Tato funkce umožňuje používat stávající knihovny pro iOS a Android napsané v cíli – C, Java nebo C/C++. Kromě toho Xamarin nabízí vazby projektů, které umožňují svázat nativní cílové knihovny C a Java pomocí deklarativní syntaxe.
  3. Konstrukce moderních jazyků – aplikace pro Xamarin jsou napsány v jazyce C#, moderním jazyce, který obsahuje významná vylepšení oproti cílům – C a Java, jako jsou funkce dynamického jazyka, funkční konstrukce, jako jsou Lambdas, LINQ, paralelní programování, Obecné a další.
  4. Robustní knihovna základních tříd (BCL) – aplikace Xamarin používají rozhraní .NET BCL, velkou kolekci tříd, která obsahuje komplexní a zjednodušené funkce, jako je například výkonné XML, databáze, serializace, vstupně-výstupní operace, řetězec a podpora sítě a další. Existující kód C# se dá zkompilovat pro použití v aplikaci, která poskytuje přístup k tisícům knihoven, které přidávají funkce nad rámec BCL.
  5. moderní integrované vývojové prostředí (IDE) – Xamarin používá Visual Studio, moderní integrované vývojové prostředí (ide), které obsahuje funkce, jako je automatické dokončování kódu, propracovaný systém pro správu projektů a řešení, komplexní knihovnu šablon projektů, integrovaný ovládací prvek zdroje a další.
  6. Podpora mobilních platforem – Xamarin nabízí sofistikovanou podporu pro různé platformy pro tři hlavní platformy iOS, Android a Windows. Aplikace lze zapsat pro sdílení až 90% kódu a Xamarin.Essentials nabízí sjednocené rozhraní API pro přístup k běžným prostředkům na všech třech platformách. Sdílený kód může významně snížit náklady na vývoj a dobu uvedení na trh pro mobilní vývojáře.

Xamarin.Android

Diagram architektury Xamarin. Android

Aplikace Xamarin. Android se zkompiluje z C# do mezilehlého jazyka (IL) , který je pak za běhu zkompilován do nativního sestavení při spuštění aplikace. Aplikace Xamarin. Android běží v prostředí spouštění mono a souběžně s virtuálním počítačem Android runtime (ART). Xamarin poskytuje vazby .NET k oborům názvů Android. * a Java. *. Prostředí pro spuštění mono volá do těchto oborů názvů prostřednictvím spravovaných obálk webcall (MCW) a poskytuje obálku s možností volání Androidu (ACW) na umění, což umožňuje, aby obě prostředí vyvolala kód v sobě navzájem.

Další informace najdete v tématu Architektura Xamarin. Android.

Xamarin.iOS

Diagram architektury Xamarin. iOS

Aplikace Xamarin. iOS jsou zcela předem (AOT) zkompilované z C# do nativního kódu sestavení ARM. Xamarin používá Selektory k vystavení cíle – c ke spravovanému c# a Registrars k vystavení spravovaného kódu c# pro cíl-C. Selektory a Registrars souhrnně se nazývají "vazby" a umožňují, aby cílení na jazyk C a C# mohly komunikovat.

Další informace najdete v tématu Architektura Xamarin. iOS.

Xamarin.Essentials

Xamarin.Essentials je knihovna, která poskytuje rozhraní API pro různé platformy pro nativní funkce zařízení. Stejně jako Xamarin samotné, Xamarin.Essentials je abstrakce, která zjednodušuje proces přístupu k nativním funkcím. Mezi příklady poskytovaných funkcí Xamarin.Essentials patří:

  • Informace o zařízení
  • Systém souborů
  • Akcelerometr
  • Telefon vytáčení
  • Převod textu na řeč
  • Zámek obrazovky

Další informace najdete na webu Xamarin.Essentials.

Xamarin.Forms

Xamarin.Forms je open source architektura uživatelského rozhraní. Xamarin.Formsumožňuje vývojářům vytvářet aplikace xamarin. iOS, Xamarin. Android a Windows z jednoho sdíleného základu kódu. Xamarin.Forms umožňuje vývojářům vytvářet uživatelská rozhraní v jazyce XAML s kódem na pozadí v jazyce C#. Tato uživatelská rozhraní se vykreslují jako výkonné nativní ovládací prvky na každé platformě. Mezi příklady poskytovaných funkcí Xamarin.Forms patří:

  • Jazyk uživatelského rozhraní XAML
  • Datové vazby
  • Gesta
  • Účinek
  • Použití stylů

Další informace najdete na webu Xamarin.Forms.

Začínáme

Následující příručky vám pomůžou vytvořit svou první aplikaci pomocí Xamarin:

Další videa Xamarin najdete na webu Channel 9 a YouTube.