Visual Studio est un environnement de développement intégré de Microsoft qui prend en charge la création d'applications mobiles via Xamarin et .NET MAUI. L'IDE comprend un éditeur C#/F#/VB.NET, un débogueur, un profileur, un concepteur XAML, des émulateurs Android/iOS et l'intégration avec Azure DevOps. Visual Studio sur Microsoft.com — portail pour les éditions Community, Professional et Enterprise.
Points clés
Visual Studio est l'IDE phare de Microsoft, sorti en 1997. Pour le développement mobile, Visual Studio fournit deux frameworks principaux : Xamarin (hérité, pris en charge jusqu'en 2028) et .NET MAUI (actuel, à partir de .NET 6 en 2021). L'IDE est disponible dans les éditions Community (gratuite pour les petites équipes), Professional et Enterprise.
La version actuelle est Visual Studio 2025 (v18.0) avec .NET 10 SDK. L'IDE prend en charge toutes les plateformes : Android (émulateur + appareils physiques), iOS (via Mac build host), Windows (débogage natif), macOS (via Parallels ou Mac Agent). Selon Stack Overflow 2025, 32 % des développeurs mobiles travaillant avec la pile .NET utilisent Visual Studio.
Fonctionnalités clés de VS Mobile : projets au format .sln/.csproj avec style SDK (MSBuild), gestion de paquets via NuGet, XAML Designer pour l'édition visuelle de l'interface utilisateur, IntelliCode (autocomplétion IA basée sur GPT-4), Live Share pour la programmation en binôme à distance.
.NET MAUI (Multi-platform App UI) est un framework Microsoft pour créer des interfaces utilisateur natives à partir d'une seule base de code C#. Contrairement à Xamarin.Forms, MAUI utilise un projet unique pour toutes les plateformes au lieu de projets séparés Android/iOS. Les ressources sont organisées dans les dossiers Platforms/Android, Platforms/iOS, Platforms/Windows.
<!-- MainPage.xaml — .NET MAUI UI —>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="MyApp.MainPage">
<VerticalStackLayout Spacing="12" Padding="16">
<Label Text="Hello, .NET MAUI!"
FontSize="24"
HorizontalOptions="Center" />
<Button Text="Load Data"
Clicked="OnLoadClicked"
BackgroundColor="#512BD4" />
<CollectionView x:Name="ItemsList" />
</VerticalStackLayout>
</ContentPage>MVVM et DI dans MAUI : le framework inclut un conteneur DI intégré (Microsoft.Extensions.DependencyInjection), Shell pour la navigation (TabBar, Flyout, Routing) et CommunityToolkit.Mvvm pour la génération INotifyPropertyChanged. BindableLayout prend en charge la liaison de données aux éléments non-ItemsView via BindableLayout.ItemsSource.
// MainPage.xaml.cs — code-behind with DI
public partial class MainPage : ContentPage
{
private readonly IApiService _api;
public MainPage(IApiService api)
{
InitializeComponent();
_api = api;
}
private async void OnLoadClicked(object sender, EventArgs e)
{
var items = await _api.GetItemsAsync();
ItemsList.ItemsSource = items;
}
}Xamarin.Essentials → MAUI Essentials : accès aux API natives : géolocalisation, accéléromètre, système de fichiers, stockage sécurisé (SecureStorage), biométrie, vibration, appeler. Les API sont appelées à partir du code C# partagé — MAUI lui-même les traduit en Android (liaisons Java/Kotlin) et iOS (liaisons Objective-C/Swift).
Xamarin est le prédécesseur de .NET MAUI, sorti en 2011 et racheté par Microsoft en 2016. Xamarin utilise des projets séparés : Xamarin.Android (C# + liaisons Android), Xamarin.iOS (C# + liaisons iOS) et Xamarin.Forms (interface utilisateur partagée via XAML). Microsoft a déclaré Xamarin SDK obsolète en 2023, mais la prise en charge se poursuit jusqu'en mai 2028.
Migration de Xamarin vers MAUI — un processus automatisé via .NET Upgrade Assistant. Principaux changements : .csproj au style SDK au lieu de l'ancien style, projet unique au lieu de projets séparés, Shell au lieu de NavigationPage, WinUI au lieu d'UWP. Microsoft fournit un guide de migration pour Xamarin.Forms → .NET MAUI avec des instructions étape par étape et un analyseur de compatibilité.
Xamarin.Android vs Xamarin.iOS diffèrent par l'architecture : Xamarin.Android utilise JNI Bridge pour appeler du code Java, Xamarin.iOS utilise la compilation Ahead-of-Time (AOT) du C# en ARM natif. Xamarin.iOS ne prend pas en charge JIT — toutes les applications iOS subissent une compilation AOT en raison des restrictions d'Apple.
XAML Designer dans Visual Studio est un éditeur visuel d'interfaces XAML avec le panneau Toolbox (composants), Properties (propriétés de l'élément sélectionné) et Document Outline (arborescence des éléments). Le Designer prend en charge l'aperçu de la liaison de données (d:DataContext pour les données au moment de la conception) et différents thèmes de conception.
XAML Hot Reload — modification du code XAML sans arrêter l'application. Hot Reload met à jour l'interface utilisateur sur un émulateur ou un appareil en cours d'exécution en quelques secondes. Dans Visual Studio 2025, Hot Reload prend en charge tous les éléments MAUI : ContentPage, ContentView, ResourceDictionary, Styles, DataTemplates. Pour le code-behind C#, .NET Hot Reload est disponible (modifications de méthode sans redémarrage).
Live Visual Tree — un inspecteur d'interface utilisateur en cours d'exécution : affiche la hiérarchie des éléments, leurs propriétés et l'état actuel. Combiné à Hot Reload, Live Visual Tree permet de modifier les propriétés des éléments à l'exécution et d'en voir immédiatement le résultat sur l'écran de l'appareil.
Le développement iOS dans Visual Studio nécessite une connexion à un Mac build host — un ordinateur macOS avec Xcode et Apple SDK. Visual Studio se connecte via SSH à Mac Agent, envoie le code source, le Mac compile le binaire iOS et renvoie le résultat. Sans Mac build host, même la compilation de projets iOS dans Visual Studio est impossible.
Configuration du Mac build host : installer Xcode et Visual Studio for Mac Agent sur macOS, activer la connexion à distance dans les paramètres système, appairer dans Visual Studio via Tools → iOS → Pair to Mac. Pour les builds cloud, MacStadium ou MacinCloud peuvent être utilisés. Microsoft Azure Pipelines prend également en charge les agents hébergés sur macOS.
iOS Simulator depuis Visual Studio s'exécute sur Mac et est diffusé vers Windows via Remote Simulator. Visual Studio 2025 utilise le simulateur Xcode 16 sur Mac pour afficher l'émulateur iOS directement sur le bureau Windows.
Android SDK Manager dans Visual Studio gère l'installation d'Android SDK, des outils de build, des plateformes (API 34, 35, 36) et des images système de l'émulateur. Visual Studio télécharge automatiquement les composants nécessaires lors de la première ouverture d'un projet Android. Alternativement, vous pouvez utiliser un SDK Android Studio installé.
Android Emulator est intégré à Visual Studio : lancez l'émulateur depuis Debug → Start Without Debugging, sélectionnez un AVD dans la liste, déboguez avec des points d'arrêt, profilez via Android Profiler. Visual Studio prend en charge Hyper-V (Windows 11) et WSL2 pour une émulation plus rapide. Android Debug Bridge (ADB) est disponible via la ligne de commande Developer PowerShell.
Google Play Services sont connectés via NuGet (Xamarin.GooglePlayServices.* ou MAUI.GooglePlayServices.*). Visual Studio configure automatiquement les fichiers JSON/XML Google Services pour Firebase et Maps. IntelliCode suggère des directives using correctes et des versions de paquets en fonction du .NET TFM de votre projet.
Foire aux questions
.NET MAUI est l'évolution de Xamarin.Forms avec un projet unique, un DI intégré, Shell, la prise en charge de WinUI et un .csproj au style SDK moderne. Xamarin.Forms nécessite des projets séparés pour chaque plateforme et ne prend pas en charge Windows 11 nativement. MAUI compile également plus rapidement grâce au SDK .NET 8/10.
Oui, via Native References et Binding Projects. Pour Android — Xamarin/MAUI Binding Library (.jar → .dll). Pour iOS — .xcframework → Static Library Binding. Les bibliothèques Kotlin/Swift sont encapsulées dans des classes proxy C#. .NET MAUI prend en charge le code spécifique à la plateforme via le dossier Platforms/Android/*.java ou Platforms/iOS/*.swift.
Utilisez l'assistant de mise à niveau .NET dans Visual Studio : Project → Upgrade. L'outil convertit .csproj, les espaces de noms XAML (Xamarin.Forms → MAUI), remplace les API obsolètes. Pour les projets séparés Xamarin.Android/iOS — fusionnez d'abord dans Xamarin.Forms, puis migrez. Microsoft estime une migration typique à 2–4 semaines pour un projet moyen.
Oui, .NET MAUI prend en charge watchOS et tvOS via des Target Framework Monikers (TFM) supplémentaires. Pour watchOS, un balisage XAML avec des éléments compatibles watchOS (WKInterfaceLabel, etc.) et un Mac build host obligatoire avec le SDK tvOS/watchOS dans Xcode sont requis.
Principales alternatives : Visual Studio Code avec C# Dev Kit (version légère, sans XAML Designer), JetBrains Rider (IDE multiplateforme avec prise en charge MAUI), Rider + Unity (pour les jeux). Rider est populaire parmi les développeurs .NET sur macOS, car Visual Studio for Mac a été abandonné en 2025.
Résumé
Nous développerons une application mobile clé en main
IT Sectr crée des applications iOS et Android pour les startups et les entreprises depuis 2017. Nous vous conseillerons et vous proposerons la meilleure solution.
Lisez aussi