Co to jest środowisko Xamarin?

Screenshots of example Xamarin application in iOS and Android

Xamarin to platforma typu open source do tworzenia 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 podstawowym kodem platformy. Środowisko Xamarin działa w środowisku zarządzanym, które zapewnia wygodę, taką 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żywanie istniejącego kodu aplikacji), ale zapewnia natywną wydajność, wygląd i działanie na każdej platformie.

Aplikacje platformy Xamarin można zapisywać na komputerze PC lub Mac i kompilować w pakietach aplikacji natywnych, 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.

KtoTo dla platformy Xamarin

Platforma Xamarin jest 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 środowisko Xamarin

Diagram of Xamarin architecture

Diagram przedstawia ogólną architekturę aplikacji Xamarin dla wielu platform. 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 podstawowymi platformami.

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 opracowywania. 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 daje 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ązań, 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ą napisane w języku C#, nowoczesnym języku, który zawiera znaczące ulepszenia języka Objective-C i Java, takie jak funkcje języka dynamicznego, konstrukcje funkcjonalne, takie jak lambdy, 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, co zapewnia dostęp do tysięcy bibliotek, które dodają funkcje wykraczające poza listę BCL.
  5. Nowoczesne zintegrowane środowisko projektowe (IDE) — platforma Xamarin korzysta z programu Visual Studio, nowoczesnego środowiska IDE, który zawiera 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 opracowywania na rynek dla deweloperów aplikacji mobilnych.

Xamarin.Android

Xamarin.Android architecture diagram

Aplikacje platformy Xamarin.Android kompilowane z języka C# do języka pośredniego (IL), który jest następnie skompilowany just in time (JIT) do natywnego zestawu podczas uruchamiania aplikacji. Aplikacje platformy Xamarin.Android działają w środowisku wykonywania Mono obok maszyny wirtualnej środowiska Uruchomieniowego systemu Android (ART). Platforma Xamarin udostępnia powiązania platformy .NET z przestrzeniami nazw Android.* i Java.*. Środowisko wykonawcze Mono wywołuje te przestrzenie nazw za pośrednictwem zarządzanych otoek z możliwością wywołania (MCW) i udostępnia elementy otoki z możliwością wywołania systemu Android (ACW) do art, umożliwiając obu środowisk wywoływanie kodu w sobie.

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

Xamarin.iOS

Xamarin.iOS architecture diagram

Aplikacje platformy Xamarin.iOS są w pełni skompilowane z poziomu języka C# do natywnego kodu zestawu arm. Platforma Xamarin używa selektorów do uwidaczniania języka Objective-C w zarządzanym języku C# i Registrars uwidacznia zarządzany kod C# w języku Objective-C. Selektory i Registrars zbiorczo są nazywane "powiązaniami" i umożliwiają komunikację między językami Objective-C i C#.

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

Xamarin.Essentials

Xamarin.Essentials to biblioteka udostępniająca międzyplatformowe interfejsy API dla funkcji urządzeń natywnych. Podobnie jak samo środowisko Xamarin, Xamarin.Essentials jest abstrakcją, 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
  • Telefon wybierania numerów
  • 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 platform Xamarin.iOS, Xamarin.Android i Windows z jednej 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 natywne kontrolki 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.

Rozpocznij

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.