Che cos'è Blazor Hybrid?

Completato

Le società che creano app Web e app client in genere assumono sviluppatori a seconda dei ruoli. Alcuni sviluppatori creano la logica back-end lato server. Alcuni creano le app Web lato client. Altri creano app client native per piattaforme per dispositivi mobili e desktop. Questi sviluppatori tuttavia usano spesso tecnologie e linguaggi di sviluppo diversi.

C# e .NET sono le scelte più comuni per la creazione della logica lato server. Le app Web lato client vengono spesso compilate con framework dell'interfaccia utente Web usando JavaScript. Quando si tratta di app client native per desktop e dispositivi mobili, sono disponibili diverse opzioni, tra cui numerose per .NET e C#. L'adozione di più linguaggi e set di strumenti prevede l'acquisizione di più set di competenze e richiede spesso due team distinti. Il codice per il trasferimento e la rappresentazione dei dati deve inoltre essere compilato in entrambi i linguaggi e mantenuto sempre sincronizzato. Blazor Hybrid può semplificare le attività, il codice e i processi del team di sviluppo consentendo di usare le competenze e il codice esistenti nella creazione di applicazioni Web in C# e .NET per creare applicazioni client native usando queste stesse tecnologie.

In questa unità si inizierà con un'introduzione a Blazor Hybrid, .NET MAUI e ai componenti Razor.

Che cos'è Blazor?

Le app Blazor sono costituite da componenti riutilizzabili di un'interfaccia utente Web, compilati con C#, HTML o CSS. Grazie a Blazor, gli sviluppatori possono compilare codice client e server con C#. Possono anche condividere il codice e le librerie con il codice client front-end e la logica back-end. La possibilità di usare C# per tutto il codice semplifica la condivisione dei dati tra front-end e back-end, consente il riutilizzo del codice per accelerare lo sviluppo e riduce la manutenzione.

Che cos'è Blazor Hybrid?

Blazor Hybrid consente agli sviluppatori di combinare framework client nativi per dispositivi mobili e desktop con .NET e Blazor.

In un'app Blazor Hybrid i componenti Razor vengono eseguiti in modo nativo nel dispositivo. I componenti eseguono il rendering in un controllo WebView incorporato tramite un canale di interoperabilità locale. I componenti non vengono eseguiti nel browser e WebAssembly non è coinvolto. I componenti di Razor caricano ed eseguono il codice rapidamente e hanno accesso completo alle funzionalità native del dispositivo tramite la piattaforma .NET.

Diagram that shows the Blazor Hybrid architecture.

Che cos'è .NET MAUI?

.NET Multi-Platform App UI (.NET MAUI) è un framework multipiattaforma per la creazione di app native per dispositivi mobili e desktop con C# e XAML. Usando .NET MAUI, è possibile sviluppare app che possono essere eseguite in Android, iOS, macOS e Windows da una singola codebase condivisa. Uno degli obiettivi principali di .NET MAUI è quello di consentire l'implementazione di quanta più logica dell'applicazione e del layout dell'interfaccia utente possibili in una singola codebase. .NET MAUI unifica le API Android, iOS, macOS e Windows in un'unica API che consente un'esperienza di sviluppo WORA (Write-Once Run-Anywhere), offrendo inoltre accesso avanzato a ogni aspetto di ogni piattaforma nativa.

Diagram that shows the .NET MAUI architecture.

App Blazor Hybrid con .NET MAUI

Il supporto di Blazor Hybrid è integrato nel framework .NET MAUI. .NET MAUI include il controllo BlazorWebView che consente di eseguire il rendering di componenti Razor in una visualizzazione Web incorporata. L'uso combinato di .NET MAUI e Blazor consente di riutilizzare un set di componenti dell'interfaccia utente Web in app per dispositivi mobili, desktop e Web.

Requisiti di sviluppo di Blazor Hybrid

È possibile compilare app Blazor ibride usando la versione più recente di Visual Studio 2022 o Visual Studio Code (con .NET SDK, carico di lavoro .NET MAUI, estensione C# Dev Kit e estensione .NET MAUI installata). In questo modulo si userà Visual Studio 2022 o Visual Studio Code per compilare l'applicazione Blazor Hybrid.

Indipendentemente dall'ambiente di sviluppo, è necessario installare il carico di lavoro MAUI .NET per assicurarsi che .NET 8.0 SDK e gli strumenti siano disponibili in Visual Studio. Dopo l'installazione saranno disponibili tutti gli strumenti necessari per iniziare a creare app Blazor Hybrid. Si creerà la prima app Blazor Hybrid nell'esercizio successivo.