Visual Studio: cos'è e come sviluppare applicazioni mobili

Autore: IT Sectr Pubblicato: 2026-02-12 Tempo di lettura: 10 min

Visual Studio è un ambiente di sviluppo integrato di Microsoft che supporta la creazione di applicazioni mobili tramite Xamarin e .NET MAUI. L'IDE include editor C#/F#/VB.NET, debugger, profiler, XAML Designer, emulatori Android/iOS e integrazione con Azure DevOps. Visual Studio su Microsoft.com — portale per le edizioni Community, Professional e Enterprise.

Punti chiave

  • Visual Studio — IDE Microsoft per lo sviluppo mobile multipiattaforma tramite Xamarin e .NET MAUI
  • .NET MAUI — successore di Xamarin.Forms con un unico progetto per Android, iOS, Windows e macOS
  • XAML Hot Reload — modifiche dell'interfaccia utente in tempo reale su un'app in esecuzione senza ricompilazione
  • iOS Remote Simulator — esecuzione di applicazioni iOS da Visual Studio tramite connessione a Mac build host
  • IntelliCode — assistente AI per il completamento automatico di C# basato sul contesto e sulle best practice

Cos'è Visual Studio?

Visual Studio è l'IDE di punta di Microsoft, rilasciato nel 1997. Per lo sviluppo mobile, Visual Studio fornisce due framework principali: Xamarin (legacy, supportato fino al 2028) e .NET MAUI (attuale, a partire da .NET 6 nel 2021). L'IDE è disponibile nelle edizioni Community (gratuita per piccoli team), Professional e Enterprise.

La versione attuale è Visual Studio 2025 (v18.0) con .NET 10 SDK. L'IDE supporta tutte le piattaforme: Android (emulatore + dispositivi fisici), iOS (tramite Mac build host), Windows (debug nativo), macOS (tramite Parallels o Mac Agent). Secondo Stack Overflow 2025, il 32% degli sviluppatori mobili che lavorano con lo stack .NET utilizza Visual Studio.

Caratteristiche principali di VS Mobile: progetti in formato .sln/.csproj con stile SDK (MSBuild), gestione pacchetti tramite NuGet, XAML Designer per la modifica visiva dell'interfaccia utente, IntelliCode (completamento codice AI basato su GPT-4), Live Share per la programmazione in coppia remota.

.NET MAUI: architettura e progetto

.NET MAUI (Multi-platform App UI) è un framework Microsoft per creare interfacce utente native da un'unica base di codice C#. A differenza di Xamarin.Forms, MAUI utilizza un unico progetto per tutte le piattaforme invece di progetti separati Android/iOS. Le risorse sono organizzate nelle cartelle 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 e DI in MAUI: il framework include un contenitore DI integrato (Microsoft.Extensions.DependencyInjection), Shell per la navigazione (TabBar, Flyout, Routing) e CommunityToolkit.Mvvm per la generazione di INotifyPropertyChanged. BindableLayout supporta il data binding a elementi non ItemsView tramite 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: accesso alle API native: geolocalizzazione, accelerometro, file system, archiviazione sicura (SecureStorage), biometria, vibrazione, effettuare chiamate. Le API vengono chiamate dal codice C# condiviso — MAUI stesso le traduce in Android (binding Java/Kotlin) e iOS (binding Objective-C/Swift).

Xamarin: progetti legacy e Forms

Xamarin è il predecessore di .NET MAUI, rilasciato nel 2011 e acquisito da Microsoft nel 2016. Xamarin utilizza progetti separati: Xamarin.Android (C# + binding Android), Xamarin.iOS (C# + binding iOS) e Xamarin.Forms (interfaccia utente condivisa tramite XAML). Microsoft ha dichiarato Xamarin SDK obsoleto nel 2023, ma il supporto continua fino a maggio 2028.

Migrazione da Xamarin a MAUI — un processo automatizzato tramite .NET Upgrade Assistant. Principali modifiche: .csproj in stile SDK invece del vecchio stile, progetto unico invece di separati, Shell invece di NavigationPage, WinUI invece di UWP. Microsoft fornisce una guida alla migrazione per Xamarin.Forms → .NET MAUI con istruzioni passo passo e un analizzatore di compatibilità.

Xamarin.Android vs Xamarin.iOS differiscono nell'architettura: Xamarin.Android utilizza JNI Bridge per chiamare codice Java, Xamarin.iOS utilizza la compilazione Ahead-of-Time (AOT) di C# in ARM nativo. Xamarin.iOS non supporta JIT — tutte le applicazioni iOS subiscono la compilazione AOT a causa delle restrizioni Apple.

XAML Designer e Hot Reload

XAML Designer in Visual Studio è un editor visivo per interfacce XAML con pannello Toolbox (componenti), Properties (proprietà dell'elemento selezionato) e Document Outline (albero degli elementi). Il Designer supporta l'anteprima del data binding (d:DataContext per i dati in fase di progettazione) e diversi temi di progettazione.

XAML Hot Reload — modifica del codice XAML senza fermare l'applicazione. Hot Reload aggiorna l'interfaccia utente su un emulatore o dispositivo in esecuzione in pochi secondi. In Visual Studio 2025, Hot Reload supporta tutti gli elementi MAUI: ContentPage, ContentView, ResourceDictionary, Styles, DataTemplates. Per il code-behind C#, è disponibile .NET Hot Reload (modifiche ai metodi senza riavvio).

Live Visual Tree — un ispettore dell'interfaccia utente in esecuzione: mostra la gerarchia degli elementi, le loro proprietà e lo stato corrente. Combinato con Hot Reload, Live Visual Tree consente di modificare le proprietà degli elementi in fase di esecuzione e vedere immediatamente il risultato sullo schermo del dispositivo.

Compilazione iOS tramite Mac build host

Lo sviluppo iOS in Visual Studio richiede una connessione a un Mac build host — un computer macOS con Xcode e Apple SDK. Visual Studio si connette tramite SSH a Mac Agent, invia il codice sorgente, il Mac compila il binario iOS e restituisce il risultato. Senza Mac build host, persino la compilazione di progetti iOS in Visual Studio è impossibile.

Configurazione del Mac build host: installare Xcode e Visual Studio for Mac Agent su macOS, abilitare Remote Login in Impostazioni di Sistema, associare in Visual Studio tramite Tools → iOS → Pair to Mac. Per le build cloud, è possibile utilizzare MacStadium o MacinCloud. Microsoft Azure Pipelines supporta anche agenti ospitati su macOS.

iOS Simulator da Visual Studio viene eseguito su Mac e viene trasmesso a Windows tramite Remote Simulator. Visual Studio 2025 utilizza Xcode 16 Simulator su Mac per visualizzare l'emulatore iOS direttamente sul desktop Windows.

Strumenti per Android in Visual Studio

Android SDK Manager in Visual Studio gestisce l'installazione di Android SDK, build-tools, piattaforme (API 34, 35, 36) e immagini di sistema dell'emulatore. Visual Studio scarica automaticamente i componenti necessari alla prima apertura di un progetto Android. In alternativa, è possibile utilizzare un Android Studio SDK installato.

Android Emulator è integrato in Visual Studio: avviare l'emulatore da Debug → Start Without Debugging, selezionare un AVD dall'elenco, eseguire il debug con punti di interruzione, profilare tramite Android Profiler. Visual Studio supporta Hyper-V (Windows 11) e WSL2 per un'emulazione più veloce. Android Debug Bridge (ADB) è disponibile tramite la riga di comando di Developer PowerShell.

Google Play Services vengono collegati tramite NuGet (Xamarin.GooglePlayServices.* o MAUI.GooglePlayServices.*). Visual Studio configura automaticamente Google Services JSON/XML per Firebase e Maps. IntelliCode suggerisce direttive using corrette e versioni dei pacchetti in base al .NET TFM del progetto.

Domande frequenti

In cosa si differenzia .NET MAUI da Xamarin.Forms?

.NET MAUI è l'evoluzione di Xamarin.Forms con un unico progetto, DI integrato, Shell, supporto WinUI e .csproj in stile SDK moderno. Xamarin.Forms richiede progetti separati per ogni piattaforma e non supporta Windows 11 nativamente. MAUI compila anche più velocemente grazie a .NET 8/10 SDK.

Si può usare codice Kotlin/Swift in Visual Studio?

Sì, tramite Native References e Binding Projects. Per Android — Xamarin/MAUI Binding Library (.jar → .dll). Per iOS — .xcframework → Static Library Binding. Le librerie Kotlin/Swift vengono incapsulate in classi proxy C#. .NET MAUI supporta il codice specifico della piattaforma tramite la cartella Platforms/Android/*.java o Platforms/iOS/*.swift.

Come migrare un progetto Xamarin a .NET MAUI?

Utilizzare l'assistente di aggiornamento .NET in Visual Studio: Project → Upgrade. Lo strumento converte .csproj, spazi dei nomi XAML (Xamarin.Forms → MAUI), sostituisce le API obsolete. Per progetti Xamarin.Android/iOS separati — prima unire in Xamarin.Forms, poi migrare. Microsoft stima una migrazione tipica in 2–4 settimane per un progetto medio.

Visual Studio 2025 supporta lo sviluppo per watchOS e tvOS?

Sì, .NET MAUI supporta watchOS e tvOS tramite Target Framework Monikers (TFM) aggiuntivi. Per watchOS, sono necessari markup XAML con elementi compatibili con watchOS (WKInterfaceLabel, ecc.) e un Mac build host obbligatorio con SDK tvOS/watchOS in Xcode.

Quali alternative a Visual Studio esistono per lo sviluppo mobile in C#?

Principali alternative: Visual Studio Code con C# Dev Kit (versione leggera, senza XAML Designer), JetBrains Rider (IDE multipiattaforma con supporto MAUI), Rider + Unity (per giochi). Rider è popolare tra gli sviluppatori .NET su macOS, poiché Visual Studio for Mac è stato interrotto nel 2025.

Riepilogo

  • Visual Studio 2025 — IDE Microsoft con .NET 10, IntelliCode e XAML Hot Reload per lo sviluppo mobile
  • .NET MAUI — progetto unico per Android, iOS, Windows, macOS con navigazione Shell e DI
  • Xamarin — framework legacy con progetti separati, supporto fino al 2028
  • Mac build host — obbligatorio per la compilazione iOS, si connette via SSH a macOS con Xcode
  • XAML Hot Reload — modifica dell'interfaccia utente su dispositivo/emulatore in esecuzione senza ricompilazione
  • IntelliCode — completamento automatico AI per C# basato sul contesto del progetto e sulle best practice
  • Google Play + Firebase Services — integrazione tramite NuGet con configurazione automatica

Svilupperemo un'applicazione mobile chiavi in mano

IT Sectr crea applicazioni iOS e Android per startup e aziende dal 2017. Ti consulteremo e ti proporremo la soluzione migliore.

Discuti il progetto

Leggi anche