Udostępnij za pośrednictwem


Metodyka DevOps z użyciem platformy Xamarin

Platforma Xamarin umożliwia tworzenie międzyplatformowych aplikacji mobilnych przeznaczonych dla systemów Android, iOS i Windows przy użyciu języków C#, .NET i Visual Studio. Platforma Xamarin umożliwia udostępnianie dużej części kodu między platformami, przy czym tylko niewielka wartość procentowa musi być specyficzna dla platformy.

Tworzenie aplikacji dla nowoczesnych platform obejmuje o wiele więcej działań niż tylko pisanie kodu. Te działania, określane jako DevOps (programowanie i operacje), obejmują pełny cykl życia aplikacji oraz obejmują planowanie i śledzenie pracy, projektowanie i implementowanie kodu, zarządzanie repozytorium kodu źródłowego, uruchamianie kompilacji, zarządzanie ciągłą integracją i wdrożeniami, testowanie (w tym testy jednostkowe i testy interfejsu użytkownika), uruchamianie różnych form diagnostyki zarówno w środowiskach deweloperskich, jak i produkcyjnych, oraz monitorowanie wydajności aplikacji i zachowań użytkowników w czasie rzeczywistym za pomocą telemetrii i Analytics.

Program Visual Studio wraz z usługami Azure DevOps Services i Team Foundation Server oferuje różne możliwości metodyki DevOps. Wiele z nich ma zastosowanie w całości do projektów międzyplatformowych. Dotyczy to szczególnie aplikacji platformy Xamarin, ponieważ są one kompilowane przy użyciu języka C# i platformy .NET, w związku z czym są tworzone niektóre narzędzia DevOps. Inne narzędzia wymagają ścisłej integracji ze środowiskami kompilacji i środowiska uruchomieniowego. Ponieważ aplikacje platformy Xamarin działają na platformach innych niż Windows i korzystają z implementacji platformy .NET mono, platforma Xamarin udostępnia wyspecjalizowane narzędzia dla określonych potrzeb.

W poniższych tabelach przedstawiono funkcje metodyki DevOps w programie Visual Studio, których można oczekiwać, że będą dobrze współdziałać z projektem platformy Xamarin i które z nich mają ograniczenia. Aby uzyskać szczegółowe informacje na temat samych funkcji, zapoznaj się z połączoną dokumentacją.

Narzędzia Agile

Link referencyjny: Informacje o narzędziach Agile i zarządzaniu projektami Agile

Komentarz ogólny: wszystkie funkcje planowania i śledzenia są niezależne od typu projektu i języków kodowania.

Funkcja Obsługiwane w środowisku Xamarin Dodatkowe komentarze
Zarządzanie listami prac i przebiegami Tak
Śledzenie pracy Tak
Współpraca w pokoju zespołowym Tak
Tablice Kanban Tak
Raportowanie i wizualizowanie postępu Tak

Modelowanie

Link referencyjny: analizowanie i architektura modelu

Funkcje projektowania są niezależne od języka kodowania lub pracują z językami platformy .NET, takimi jak C#. Zobacz Role diagramów architektury i modelowania w programowaniu oprogramowania, aby dowiedzieć się, jakie aspekty są związane z kodem.

Funkcja Obsługiwane w środowisku Xamarin Dodatkowe komentarze
Diagramy sekwencji Tak
Wykresy zależności Tak
Hierarchia wywołań Tak
Projektant klas Tak
Eksplorator architektury Tak
Diagramy UML (przypadek użycia, aktywność, klasa, składnik, sekwencja i DSL) Tak
Diagramy warstw Tak
Walidacja warstwy Tak

Kod

Funkcja Obsługiwane w środowisku Xamarin Dodatkowe komentarze
Używanie Kontrola wersji serwera Team Foundation (TFVC) lub usługi Azure Repos Tak
Wprowadzenie do usługi Git w usłudze Azure Repos Tak
Podnoszenie jakości kodu Tak
Znajdowanie zmian w kodzie i innych elementów historii Tak Z wyjątkiem granic specyficznych dla platformy, w których implementacja nie jest rozpoznawana do czasu wykonywania.
Używanie map kodu do debugowania aplikacji Tak

Tworzenie

Link referencyjny: Azure Pipelines

Funkcja Obsługiwane w środowisku Xamarin Dodatkowe komentarze
Lokalny serwer TFS Tak Maszyny kompilacji muszą mieć zainstalowane środowisko Xamarin i mogą być połączone z komputerem OSX w celu kompilacji dla systemu iOS. Zobacz Use TFVC (Korzystanie z kontrolera TFVC)
Lokalny serwer kompilacji połączony z usługą Azure Pipelines Tak Aby uzyskać instrukcje, zobacz Kompilowanie i wydawanie agentów .
Hostowana usługa kontrolera usługi Azure Pipelines Tak Zobacz Tworzenie aplikacji platformy Xamarin.
Tworzenie definicji za pomocą skryptów wstępnych i po ich utworzeniu Tak
Ciągła integracja, w tym zaewidencjonowane bramki Tak Zaewidencjonowane ewidencjonowane dla kontroli wersji serwera TEAMVC tylko w usłudze Git działa w modelu żądania ściągnięcia, a nie na ewidencjonowanych danych.

Przetestuj

Funkcja Obsługiwane w środowisku Xamarin Dodatkowe komentarze
Planowanie testów, tworzenie przypadków testowych i organizowanie zestawów testów Tak
Testowanie ręczne Tak
Menedżer testów (testy rejestrowania i odtwarzania) Tak Urządzenia z systemem Windows i emulatory systemu Android tylko z programu Visual Studio.
Pokrycie kodu nie dotyczy
Testowanie jednostkowe kodu Tak W przypadku obiektów docelowych systemu Windows i Android można użyć wbudowanych narzędzi MSTest. Aby uruchomić testy jednostkowe w systemach Windows, Android i iOS, platforma Xamarin zaleca narzędzie NUnit. Zobacz Use TFVC (Korzystanie z kontrolera TFVC).
Używanie automatyzacji interfejsu użytkownika do testowania kodu Tylko Windows Rejestrator testów interfejsu użytkownika programu Visual Studio jest tylko systemem Windows. Dla wszystkich platform zobacz Xamarin.UITest.

Poprawianie jakości kodu

Link referencyjny: Poprawianie jakości kodu

Funkcja Obsługiwane w środowisku Xamarin Dodatkowe komentarze
Analizowanie jakości kodu zarządzanego Tak
Znajdowanie zduplikowanego kodu przy użyciu wykrywania klonowania kodu Tak
Mierzenie złożoności i łatwość utrzymania kodu zarządzanego Tak
Eksplorator wydajności Nie. Zamiast tego użyj programu Xamarin Profiler za pomocą Visual Studio dla komputerów Mac. Należy pamiętać, że program Xamarin Profiler jest obecnie w wersji zapoznawczej i nie działa jeszcze w przypadku obiektów docelowych systemu Windows.
Analizowanie problemów z pamięcią programu .NET Framework Nie. Narzędzia programu Visual Studio nie mają punktów zaczepienia w strukturze Mono do profilowania.

Zarządzanie wydaniami

Link referencyjny: kompilowanie i wydawanie w usługach Azure Pipelines i TFS

Funkcja Obsługiwane w środowisku Xamarin Dodatkowe komentarze
Zarządzanie procesami wydawania Tak
Wdrażanie na serwerach na potrzeby ładowania bezpośredniego za pośrednictwem skryptów Tak
Przekazywanie do sklepu z aplikacjami Częściowe Dostępne są rozszerzenia, które mogą zautomatyzować ten proces dla niektórych sklepów z aplikacjami. Zobacz Rozszerzenia dla usług Azure DevOps Services, na przykład rozszerzenie dla sklepu Google Play.

Monitorowanie za pomocą zestawu SDK usługi App Center

Link referencyjny: Monitorowanie za pomocą zestawu SDK centrum aplikacji

Funkcja Obsługiwane w środowisku Xamarin Dodatkowe komentarze
Analiza awarii, telemetria i dystrybucja beta Tak