Contattataci

Struttura del corso

1. Introduzione a .NET MAUI e allo sviluppo cross-platform

  • Architettura di .NET MAUI e ciclo di vita dell'applicazione
  • Struttura del progetto multi-piattaforma e architettura a singolo progetto
  • Comprensione di handler, controlli, layout e astrazioni di piattaforma
  • Codice specifico per piattaforma e compilazione condizionale
  • Gestione delle dipendenze e pacchetti NuGet
  • Utilizzo di Visual Studio e della .NET CLI
  • Compilazione ed esecuzione di applicazioni su Android, iOS, Windows e macOS
  • Esercitazione: Creazione e configurazione di un'applicazione .NET MAUI multi-piattaforma

2. Tecniche e pattern MVVM avanzati

  • Ripasso di MVVM e separazione delle responsabilità
  • Tecniche avanzate di data binding
  • Binding compilati e prestazioni del binding
  • INotifyPropertyChanged e collezioni osservabili
  • Comandi, comandi asincroni e parametri di comando
  • CommunityToolkit.Mvvm e generatori di codice (source generators)
  • ViewModel, servizi e gestione dello stato
  • Navigazione e ViewModel consapevoli della navigazione
  • Gestione della validazione e dello stato dell'applicazione
  • Esercitazione: Creazione di un'applicazione MVVM multi-pagina con validazione e operazioni asincrone

3. Iniezione delle dipendenze e architettura dell'applicazione

  • Iniezione delle dipendenze integrata in .NET
  • Tempi di vita dei servizi: transient, scoped e singleton
  • Registrazione di servizi specifici per piattaforma e condivisi
  • Iniezione tramite costruttore e composizione dei servizi
  • Inversione delle dipendenze e accoppiamento debole
  • Pattern Repository e Service
  • Gestione delle dipendenze a livello di applicazione
  • Configurazione e servizi specifici per ambiente
  • Esercitazione: Refactoring di un'applicazione utilizzando l'iniezione delle dipendenze

4. Approfondimento sulla personalizzazione e estensione di .NET MAUI

  • Comprensione degli handler e dell'architettura di rendering di .NET MAUI
  • Handler personalizzati e implementazioni specifiche per piattaforma
  • Mappatura dei controlli .NET MAUI sui controlli nativi della piattaforma
  • Estensione di controlli esistenti
  • Creazione di controlli personalizzati
  • Comportamento e API specifici per piattaforma
  • Effetti, comportamenti ed estensioni UI riutilizzabili
  • Quando utilizzare handler, comportamenti, effetti o controlli personalizzati
  • Esercitazione: Creazione e integrazione di un controllo cross-platform personalizzato

5. Creazione di componenti e librerie riutilizzabili

  • Progettazione di componenti UI riutilizzabili
  • Creazione di controlli personalizzati e ContentViews
  • Parametrizzazione dei componenti e data binding
  • Creazione di comportamenti e convertitori riutilizzabili
  • Organizzazione delle funzionalità condivise dell'applicazione
  • Creazione di librerie di classi .NET per applicazioni MAUI
  • Imballaggio e distribuzione di componenti riutilizzabili
  • Fondamenti dei pacchetti NuGet
  • Esercitazione: Creazione di una libreria di componenti riutilizzabili

6. UI/UX avanzata, layout e animazioni

  • Layout avanzati e progettazione UI reattiva
  • Interfacce adattive per telefoni, tablet e desktop
  • Risorse dinamiche e stili
  • Dizionari di risorse e gestione dei temi
  • Temi chiaro e scuro
  • Stati visivi e UI guidata dallo stato
  • Animazioni e transizioni avanzate
  • Riconoscimento dei gesti
  • Disegno personalizzato e grafica
  • Considerazioni sull'accessibilità
  • Esercitazione: Creazione di un'interfaccia MAUI reattiva e animata

7. Gestione di scenari dati complessi

  • Consumo di API REST da .NET MAUI
  • Client HTTP e accesso ai dati asincrono
  • Serializzazione e deserializzazione JSON
  • Gestione degli errori e strategie di retry
  • Persistenza locale dei dati
  • SQLite e database locali
  • Pattern Repository per l'accesso ai dati
  • Progettazione di applicazioni offline-first
  • Sincronizzazione tra dati locali e remoti
  • Strategie di risoluzione dei conflitti
  • Caching e invalidazione della cache
  • Esercitazione: Implementazione di un'applicazione basata su dati con capacità offline

8. Ottimizzazione delle prestazioni e tuning

  • Identificazione dei colli di bottiglia delle prestazioni
  • Ottimizzazione dei tempi di avvio
  • Gestione della memoria e utilizzo delle risorse
  • Riduzione degli aggiornamenti UI non necessari
  • Ottimizzazione dei binding e del rendering delle collezioni
  • Caricamento efficiente delle immagini e caching
  • Programmazione asincrona e avoidance del blocco del thread UI
  • Elaborazione in background
  • Riduzione delle dimensioni dell'applicazione
  • Gestione delle memory leak e dei tempi di vita degli oggetti
  • Esercitazione: Profiling e ottimizzazione di un'applicazione MAUI intenzionalmente inefficiente

9. Tecniche avanzate di debug e profiling

  • Debug di applicazioni cross-platform
  • Breakpoint, watch e gestione delle eccezioni
  • Diagnosi di problemi UI e ciclo di vita
  • Logging e diagnostiche strutturate
  • Strumenti di diagnostica e profiling .NET
  • Profiling della CPU e della memoria
  • Rilevamento delle memory leak
  • Indagine sul rendering lento dell'UI
  • Debug di problemi specifici per piattaforma
  • Utilizzo delle diagnostiche su dispositivi e emulatori
  • Esercitazione: Diagnosi e risoluzione di comuni problemi di prestazioni ed esecuzione

10. Pattern architetturali e best practice per applicazioni su larga scala

  • Scelta di un'architettura applicativa appropriata
  • Concetti di Clean Architecture
  • Architettura a livelli
  • Separazione di UI, logica di business e accesso ai dati
  • Astrazioni di Repository e Service
  • Principi SOLID nelle applicazioni MAUI
  • Gestione dello stato dell'applicazione
  • Organizzazione del progetto basata sulle funzionalità
  • Progettazione di applicazioni modulari
  • Considerazioni su scalabilità e manutenibilità
  • Esercitazione: Progettazione dell'architettura di un'applicazione MAUI su scala di produzione

11. Strategie di testing avanzate

  • Unit test di ViewModel e servizi
  • Test della logica di business indipendentemente dalla UI
  • Mocking delle dipendenze
  • Test del codice asincrono
  • Test della navigazione e dello stato dell'applicazione
  • Concetti di UI testing e test di integrazione
  • Architettura applicativa testabile
  • Considerazioni sull'integrazione continua
  • Esercitazione: Creazione di una suite di test per un'applicazione MAUI

12. Sicurezza nelle applicazioni .NET MAUI

  • Architettura dell'applicazione sicura
  • Archiviazione sicura delle informazioni sensibili
  • Autenticazione e autorizzazione
  • Gestione dei token
  • Considerazioni sulla sicurezza delle API
  • Protezione dei dati archiviati localmente
  • Comunicazione sicura con i servizi backend
  • Gestione delle credenziali e dei segreti
  • Rischi comuni per la sicurezza delle applicazioni mobili
  • Esercitazione: Implementazione di autenticazione sicura e archiviazione delle credenziali

13. Distribuzione e distribuzione delle applicazioni

  • Compilazione di applicazioni per diverse piattaforme
  • Configurazioni Release e Debug
  • Firma delle applicazioni e certificati
  • Imballaggio delle applicazioni Android
  • Concetti di distribuzione delle applicazioni iOS
  • Imballaggio delle applicazioni Windows
  • Versionamento e gestione delle release
  • Configurazione specifica per ambiente
  • Pubblicazione delle applicazioni negli app store
  • Considerazioni CI/CD per i progetti MAUI
  • Esercitazione: Preparazione di un'applicazione MAUI per la distribuzione in produzione

14. Ultime funzionalità di .NET MAUI e Visual Studio

  • Ricenti miglioramenti e modifiche a .NET MAUI
  • Nuovi controlli, API e capacità di sviluppo
  • Miglioramenti a handler e integrazione delle piattaforme
  • Strumenti e funzionalità di produttività di Visual Studio
  • Pratiche moderne di sviluppo .NET
  • Valutazione delle librerie di terze parti e delle funzionalità del MAUI Community Toolkit
  • Considerazioni su migrazione e upgrade
  • Manutenzione delle applicazioni tra le versioni .NET

15. Esercitazione finale: Creazione di un'applicazione .NET MAUI pronta per la produzione

  • Definizione dei requisiti e dell'architettura dell'applicazione
  • Progettazione della struttura MVVM
  • Configurazione dell'iniezione delle dipendenze
  • Implementazione di componenti UI riutilizzabili
  • Collegamento a fonti di dati remote e locali
  • Aggiunta di caching e sincronizzazione
  • Implementazione di validazione e gestione degli errori
  • Applicazione di ottimizzazioni delle prestazioni
  • Aggiunta di sicurezza e autenticazione
  • Test delle funzionalità critiche dell'applicazione
  • Preparazione dell'applicazione per la distribuzione

16. Riepilogo e prossimi passi

  • Ripasso dei concetti avanzati di .NET MAUI
  • Comuni insidie architetturali e di prestazioni
  • Pratiche di sviluppo raccomandate
  • Risorse per ulteriori apprendimenti
  • Pianificazione dei prossimi passi verso lo sviluppo MAUI pronto per la produzione
  • Sessioni Q&A e discussione dei progetti dei partecipanti

Requisiti

  • Competenza nel linguaggio di programmazione C#
  • Solida comprensione dei concetti di programmazione orientata agli oggetti (OOP)
  • Familiarità con il framework .NET

Pubblico di riferimento

  • Sviluppatori
 14 ore

Numero di Partecipanti


Prezzo per partecipante

Recensioni (3)

Corsi in Arrivo

Categorie relative