次の方法で共有


Xamarin を使用した DevOps

Xamarin では、Android、iOS、および Windows を対象とするクロスプラットフォームのモバイル アプリを、C#、.NET、および Visual Studio を使用して作成することができます。 Xamarin を利用すると、コードの大部分をプラットフォーム間で共有し、プラットフォーム固有にする必要のあるコードをごく一部に抑えることができます。

最新のプラットフォーム向けのアプリ開発には、コードを記述するだけでなく、それ以外の多くのアクティビティが関係します。 これらのアクティビティは、アプリの完全なライフサイクルの中で DevOps (開発 + 運用) 期間になされるものあり、たとえば、作業のアジャイルな計画と追跡、コードの設計と実装、ソース コード リポジトリの管理、ビルドの実行、継続的に実行されるインテグレーションと展開の管理、テスト (単体テストと UI テストを含む)、開発環境と運用環境の両方におけるさまざまな形式の診断の実行、製品利用統計情報と分析によるアプリのパフォーマンスとユーザー動作のリアルタイムな監視などがあります。

Visual Studio、Azure DevOps Services、Team Foundation Server は、さまざまな DevOps 機能を提供しています。 これらの多くは、クロスプラットフォームのプロジェクトに完全に適用されます。 Xamarin アプリでは特にそう言えます。C# と .NET で構築し、いくつかの DevOps ツールはそれらを中心に構築されているからです。 その他のツールでは、ビルド環境およびランタイム環境との緊密な統合が必要です。 Xamarin アプリは Windows 以外のプラットフォームでも実行でき、.NET の Mono 実装を使用しているため、Xamarin では特定の必要に合わせて専門ツールが提供されます。

次の表は、Xamarin プロジェクトで動作する Visual Studio の DevOps 機能と制限がある機能を示しています。 各機能そのものの詳細については、リンク先のドキュメントを参照してください。

アジャイル ツール

参照リンク: アジャイル ツールとアジャイル プロジェクト管理の概要

一般的なコメント: すべての計画機能と追跡機能は、プロジェクトの種類とコーディング言語には依存しません。

機能 Xamarin でサポートされているかどうか その他のコメント
バックログとスプリントの管理 はい
作業の追跡 はい
チーム ルーム コラボレーション はい
かんばんボード はい
進行状況のレポートと視覚化 はい

モデリング

参照リンク: アーキテクチャの分析とモデル化

デザイン機能は、コーディング言語に依存しないか、または C# のような .NET 言語と一緒に機能します。 コードに関連する側面については「ソフトウェア開発におけるアーキテクチャ図とモデル図の役割」を参照してください。

機能 Xamarin でサポートされているかどうか その他のコメント
シーケンス図 はい
依存関係グラフ はい
呼び出し階層 はい
クラス デザイナー はい
アーキテクチャ エクスプローラー はい
UML 図 (ユース ケース、アクティビティ、クラス、コンポーネント、シーケンス、および DSL) はい
レイヤー図 はい
レイヤー検証 はい

コード

機能 Xamarin でサポートされているかどうか その他のコメント
Team Foundation バージョン管理 (TFVC) または Azure Repos を使用する はい
Azure Repos で Git を使用した作業の開始 はい
コード品質の向上 はい
コード変更およびその他の履歴の検索 はい ただし、実行時まで実装が解決しない、プラットフォームに固有の境界をまたぐ場合を除きます。
コード マップを使用してアプリケーションをデバッグする はい

Build

参照リンク: Azure Pipelines

機能 Xamarin でサポートされているかどうか その他のコメント
オンプレミスの TFS サーバー はい ビルド コンピューターに Xamarin がインストールされている必要があります。iOS 用にビルドするには、OSX コンピューターにリンクできる必要があります。 「TFVC の使用」を参照してください。
Azure Pipelines にリンクされたオンプレミスのビルド サーバー はい 手順については、「Build and release agents」 (ビルド エージェントとリリース エージェント) を参照してください。
Azure Pipelines のホスト コント ローラー サービス はい Build your Xamarin app」 (Xamarin アプリのビルド) を参照してください。
事前スクリプトと事後スクリプトによるビルド定義 はい
継続的な統合 (ゲート チェックインを含む) はい Git としての TFVC へのゲート チェックインのみ、チェックイン モデルではなく、プル要求モデルで機能します。

Test

機能 Xamarin でサポートされているかどうか その他のコメント
テストの計画、テスト ケースの作成、およびテスト スイートの編成 はい
手動テスト はい
テスト マネージャー (テストの記録と再生) はい Windows デバイスと Android エミュレーター (Visual Studio からのみ)。
コード カバレッジ 該当なし
コードの単体テスト はい Windows と Android を対象にする場合は、組み込みの MSTest ツールを使用できます。 Windows、Android、および iOS で単体テストを実行するには、Xamarin では NUnit が推奨されています。 「TFVC の使用」を参照してください。
UI オートメーションを使用してコードをテストする Windows のみ Visual Studio の UI テスト レコーダーは Windows のみです。 すべてのプラットフォームについては、Xamarin.UITest を参照してください。

コード品質の向上

参照リンク: コードの品質の向上

機能 Xamarin でサポートされているかどうか その他のコメント
マネージド コードの品質の分析 はい
コード クローン検出を使用した重複コードの検出 はい
マネージド コードの複雑さと保守性の測定 はい
パフォーマンス エクスプローラー いいえ 代わりに、Visual Studio for Mac を介して Xamarin Profiler を使用します。 Xamarin プロファイラーは現在プレビュー期間中であり、Windows を対象にした場合はまだ動作しないことに注意してください。
.NET Framework のメモリ分析の問題 いいえ Visual Studio ツールには、プロファイリング用の Mono フレームワークへのフックはありません。

リリース管理

参照リンク: Azure Pipelines および TFS でのビルドとリリース

機能 Xamarin でサポートされているかどうか その他のコメント
リリース プロセスの管理 はい
スクリプトによるサイドローディング用のサーバーへの配置 はい
アプリ ストアへのアップロード Partial 一部のアプリ ストアに対して、このプロセスを自動化することができる拡張機能が使用できます。 たとえば、Google Play の拡張機能については、Azure DevOps Services の拡張機能を参照してください。

App Center SDK を使用した監視

リファレンス リンク: App Center SDK を使用した監視

機能 Xamarin でサポートされているかどうか その他のコメント
クラッシュ分析、製品利用統計情報、およびベータ版の配布 はい