Visual Studio : qu'est-ce que c'est et comment développer des applications mobiles

Auteur : IT Sectr Publié le : 2026-02-12 Temps de lecture : 10 min

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 — IDE Microsoft pour le développement mobile multiplateforme via Xamarin et .NET MAUI
  • .NET MAUI — successeur de Xamarin.Forms avec un projet unique pour Android, iOS, Windows et macOS
  • XAML Hot Reload — modifications de l'interface utilisateur en temps réel sur une application en cours d'exécution sans recompilation
  • iOS Remote Simulator — exécution d'applications iOS depuis Visual Studio via connexion à un Mac build host
  • IntelliCode — assistant IA pour l'autocomplétion C# basé sur le contexte et les bonnes pratiques

Qu'est-ce que Visual Studio ?

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 : architecture et projet

.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.

xml
<!-- 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.

csharp
// 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 : projets hérités et Forms

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 et Hot Reload

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.

Compilation iOS via Mac build host

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.

Outils Android dans Visual Studio

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

En quoi .NET MAUI diffère-t-il de Xamarin.Forms ?

.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.

Peut-on utiliser du code Kotlin/Swift dans Visual Studio ?

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.

Comment migrer un projet Xamarin vers .NET MAUI ?

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.

Visual Studio 2025 prend-il en charge le développement watchOS et tvOS ?

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.

Quelles sont les alternatives à Visual Studio pour le développement mobile en C# ?

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é

  • Visual Studio 2025 — IDE Microsoft avec .NET 10, IntelliCode et XAML Hot Reload pour le développement mobile
  • .NET MAUI — projet unique pour Android, iOS, Windows, macOS avec navigation Shell et DI
  • Xamarin — framework hérité avec projets séparés, prise en charge jusqu'en 2028
  • Mac build host — obligatoire pour la compilation iOS, se connecte via SSH à macOS avec Xcode
  • XAML Hot Reload — modification de l'interface utilisateur sur un appareil/émulateur en cours d'exécution sans recompilation
  • IntelliCode — autocomplétion IA pour C# basée sur le contexte du projet et les bonnes pratiques
  • Google Play + Firebase Services — intégration via NuGet avec configuration automatique

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.

Discuter du projet

Lisez aussi