Co to jest środowisko Xamarin?

Zrzuty ekranu przykładowej aplikacji platformy Xamarin w systemach iOS i Android

Xamarin to platforma typu open source umożliwiająca tworzenie nowoczesnych i wydajnych aplikacji dla systemów iOS, Android i Windows przy użyciu platformy .NET. Xamarin to warstwa abstrakcji, która zarządza komunikacją udostępnionego kodu z bazowym kodem platformy. Środowisko Xamarin działa w środowisku zarządzanym, które zapewnia wygody, takie jak alokacja pamięci i odzyskiwanie pamięci.

Platforma Xamarin umożliwia deweloperom udostępnianie średnio 90% aplikacji na różnych platformach. Ten wzorzec umożliwia deweloperom pisanie całej logiki biznesowej w jednym języku (lub ponowne użycie istniejącego kodu aplikacji), ale zapewnia natywną wydajność, wygląd i działanie na każdej platformie.

Aplikacje platformy Xamarin można pisać na komputerze PC lub Mac i kompilować w natywnych pakietach aplikacji, takich jak plik apk w systemie Android lub plik ipa w systemie iOS.

Uwaga

Kompilowanie i wdrażanie aplikacji dla systemu iOS wymaga obecnie maszyny z systemem MacOS. Aby uzyskać więcej informacji na temat wymagań programistycznych, zobacz wymagania systemowe.

Kto jest dla platformy Xamarin

Platforma Xamarin jest przeznaczona dla deweloperów z następującymi celami:

  • Udostępnianie kodu, testowania i logiki biznesowej na różnych platformach.
  • Pisanie aplikacji międzyplatformowych w języku C# przy użyciu programu Visual Studio.

Jak działa platforma Xamarin

Diagram architektury platformy Xamarin

Na diagramie przedstawiono ogólną architekturę międzyplatformowej aplikacji platformy Xamarin. Platforma Xamarin umożliwia tworzenie natywnego interfejsu użytkownika na każdej platformie i pisanie logiki biznesowej w języku C#, który jest współużytkowany na różnych platformach. W większości przypadków 80% kodu aplikacji jest dostępne przy użyciu platformy Xamarin.

Platforma Xamarin jest oparta na platformie .NET, która automatycznie obsługuje zadania, takie jak alokacja pamięci, odzyskiwanie pamięci i współdziałanie z platformami bazowymi.

Aby uzyskać więcej informacji na temat architektury specyficznej dla platformy, zobacz Xamarin.Android i Xamarin.iOS.

Dodano funkcje

Platforma Xamarin łączy możliwości platform natywnych, dodając funkcje, które obejmują:

  1. Pełne powiązanie podstawowych zestawów SDK — platforma Xamarin zawiera powiązania dla prawie wszystkich podstawowych zestawów SDK platformy w systemach iOS i Android. Ponadto te powiązania są silnie typizowane, co oznacza, że są łatwe do nawigowania i używania oraz zapewniają niezawodne sprawdzanie typów w czasie kompilacji i podczas programowania. Silnie typizowane powiązania prowadzą do mniejszej liczby błędów środowiska uruchomieniowego i aplikacji o wyższej jakości.
  2. Międzyoperacyjności języka Objective-C, Java, C i C++ — platforma Xamarin udostępnia funkcje umożliwiające bezpośrednie wywoływanie bibliotek Objective-C, Java, C i C++, co zapewnia możliwość korzystania z szerokiej gamy kodu innej firmy. Ta funkcja umożliwia korzystanie z istniejących bibliotek systemów iOS i Android napisanych w języku Objective-C, Java lub C/C++. Ponadto platforma Xamarin oferuje projekty powiązania, które umożliwiają powiązanie natywnych bibliotek Objective-C i Java przy użyciu składni deklaratywnej.
  3. Nowoczesne konstrukcje językowe — aplikacje platformy Xamarin są pisane w języku C#, nowoczesnym języku, który obejmuje znaczące ulepszenia języka Objective-C i Java, takie jak funkcje języka dynamicznego, konstrukcje funkcjonalne, takie jak lambdas, LINQ, programowanie równoległe, typy ogólne i inne.
  4. Niezawodna biblioteka klas bazowych (BCL) — aplikacje platformy Xamarin korzystają z listy BCL platformy .NET, dużej kolekcji klas, które mają kompleksowe i usprawnione funkcje, takie jak zaawansowany kod XML, baza danych, serializacja, operacje we/wy, ciągi i obsługa sieci itd. Istniejący kod języka C# można skompilować do użycia w aplikacji, która zapewnia dostęp do tysięcy bibliotek, które dodają funkcje poza listę BCL.
  5. Nowoczesne zintegrowane środowisko projektowe (IDE) — platforma Xamarin używa programu Visual Studio, nowoczesnego środowiska IDE, które obejmuje funkcje, takie jak automatyczne uzupełnianie kodu, zaawansowany system zarządzania projektami i rozwiązaniami, kompleksowa biblioteka szablonów projektu, zintegrowana kontrola źródła i nie tylko.
  6. Obsługa wielu platform mobilnych — platforma Xamarin oferuje zaawansowaną obsługę wielu platform dla trzech głównych platform systemów iOS, Android i Windows. Aplikacje można zapisywać w celu udostępniania do 90% kodu i Xamarin.Essentials oferuje ujednolicony interfejs API umożliwiający dostęp do wspólnych zasobów na wszystkich trzech platformach. Udostępniony kod może znacznie zmniejszyć koszty programowania i czas na rynek dla deweloperów mobilnych.

Xamarin.Android

Diagram architektury platformy Xamarin.Android

Aplikacje platformy Xamarin.Android kompilowane z języka C# do języka pośredniego (IL), czyli just in time (JIT) skompilowane do zestawu natywnego po uruchomieniu aplikacji. Aplikacje platformy Xamarin.Android są uruchamiane w środowisku wykonywania mono obok maszyny wirtualnej środowiska Android Runtime (ART). Platforma Xamarin udostępnia powiązania platformy .NET z przestrzeniami nazw Android.* i Java.* . Środowisko wykonywania Mono wywołuje te przestrzenie nazw za pośrednictwem zarządzanych otoek wywoływanych (MCW) i udostępnia otoki wywoływane przez system Android (ACW) do art, umożliwiając obu środowisk wywoływanie kodu nawzajem.

Aby uzyskać więcej informacji, zobacz Architektura platformy Xamarin.Android.

Xamarin.iOS

Diagram architektury platformy Xamarin.iOS

Aplikacje platformy Xamarin.iOS są w pełni skompilowane z języka C# do natywnego kodu zestawu usługi ARM. Platforma Xamarin używa selektorów , aby uwidocznić język Objective-C w zarządzanym języku C# i Registrars uwidocznić zarządzany kod języka C# w języku Objective-C. Selektory i Registrars zbiorczo są nazywane "powiązaniami" i umożliwiają komunikowanie się w języku Objective-C i C#.

Aby uzyskać więcej informacji, zobacz Architektura platformy Xamarin.iOS.

Xamarin.Essentials

Xamarin.Essentials to biblioteka, która udostępnia międzyplatformowe interfejsy API dla funkcji urządzeń natywnych. Podobnie jak sama platforma Xamarin, jest abstrakcją, Xamarin.Essentials która upraszcza proces uzyskiwania dostępu do funkcji natywnych. Oto kilka przykładów funkcji udostępnianych przez Xamarin.Essentials :

  • Informacje o urządzeniu
  • System plików
  • Akcelerometr
  • Numer telefonu
  • Zamiana tekstu na mowę
  • Blokada ekranu

Aby uzyskać więcej informacji, zobacz Xamarin.Essentials.

Xamarin.Forms

Xamarin.Forms to platforma interfejsu użytkownika typu open source. Xamarin.Forms Umożliwia deweloperom tworzenie aplikacji Xamarin.iOS, Xamarin.Android i Windows z pojedynczej udostępnionej bazy kodu. Xamarin.Forms Umożliwia deweloperom tworzenie interfejsów użytkownika w języku XAML za pomocą kodu w języku C#. Te interfejsy użytkownika są renderowane jako wydajne kontrolki natywne na każdej platformie. Oto kilka przykładów funkcji udostępnianych przez Xamarin.Forms :

  • Język interfejsu użytkownika XAML
  • Powiązanie danych
  • Gestów
  • Efekty
  • Style

Aby uzyskać więcej informacji, zobacz Xamarin.Forms.

Rozpoczęcie pracy

Poniższe przewodniki pomogą Ci utworzyć pierwszą aplikację przy użyciu platformy Xamarin:

Więcej filmów na platformie Xamarin można znaleźć w witrynach Channel 9 i YouTube.