Scegli la tua lingua
Corso Dart e Flutter
Più di 2 milioni di studenti in tutto il mondo

Corso Dart e Flutter

Padroneggi Dart e Flutter partendo da zero e costruisca app mobili pronte per la produzione per Android e iOS. Questo corso La accompagna dalla sintassi di base di Dart fino alla gestione dello stato, networking, testing e deployment sugli store. Ogni concetto è radicato in codice reale che potrà utilizzare immediatamente.

Dedika per aziende

Cosa imparerai:

Inizierà con i fondamenti di Dart, incluse variabili, funzioni, collezioni e programmazione orientata agli oggetti, per poi passare ai pattern asincroni come Futures, Streams e Isolates. Da qui, costruirà UI Flutter utilizzando widget di layout, navigazione e form. Implementerà la gestione dello stato con Provider, Riverpod e BLoC e collegherà le sue app a API REST e database SQLite. Il corso copre anche test di unità, widget e integrazione, oltre all'integrazione con Firebase e all'ottimizzazione delle prestazioni. Al termine, avrà le competenze per progettare, costruire, testare e pubblicare un'applicazione Flutter completa.

Come studi in modo pratico Corso Dart e Flutter

Come metti in pratica Corso Dart e Flutter

Per te che sei un'azienda e vuoi formare il tuo team

Su Dedika per aziende, il corso include esercizi ed esempi personalizzati sul tuo business e secondo le esigenze della tua azienda.

Clicca qui

Contenuto del corso

8 Capitoli • 38 LezioniDurata tra 4 e 360 ore (decidi tu)

Capitolo 1Vedi dettagli

Fondamenti del Linguaggio Dart

  • Lezione 1 • Flusso di Controllo e Cicli

    Insegna i costrutti if/else, switch, for, while e do-while. Fornisce le strutture logiche necessarie per tutto il lavoro algoritmico successivo.

  • Lezione 2 • Funzioni e Scope

    Definisce funzioni con nome, anonime e arrow insieme alle regole di scope lessicale. Prepara gli studenti a una progettazione del codice modulare e riutilizzabile.

  • Lezione 3 • Collezioni: List, Set e Map

    Esplora i tipi di collezione principali di Dart e i loro metodi di manipolazione. Fornisce agli studenti la capacità di memorizzare e trasformare dati strutturati in modo efficace.

  • Lezione 4 • Configurare l'Ambiente Dart

    Installi l'SDK Dart, configuri un IDE ed esegua un primo programma. Stabilisce la toolchain necessaria per tutti i capitoli successivi.

  • Lezione 5 • Variabili, Tipi e Operatori

    Tratta il sistema di tipi statico di Dart, i tipi incorporati e gli operatori aritmetici e logici. Consente una gestione corretta dei dati in ogni programma.

Capitolo 2Vedi dettagli

Programmazione Orientata agli Oggetti in Dart

  • Lezione 1 • Classi e Costruttori

    Introduce la dichiarazione di classe, i campi, i metodi e i tipi di costruttore. Costituisce la spina dorsale di tutto il codice dei widget e dei modelli Flutter.

  • Lezione 2 • Null Safety e Tipi Sound

    Spiega i tipi nullable e non-nullable, gli operatori ? e ! e le variabili late. Elimina gli errori di riferimento nullo prima del runtime.

  • Lezione 3 • Interfacce e Mixin

    Insegna le interfacce implicite e la composizione con mixin per la condivisione orizzontale del codice. Fornisce pattern ampiamente utilizzati nel sistema di widget di Flutter.

  • Lezione 4 • Enum e Metodi di Estensione

    Esplora gli enum avanzati e i metodi di estensione per aggiungere comportamento senza sottoclasse. Mantiene le basi di codice espressive e manutenibili.

  • Lezione 5 • Ereditarietà e Polimorfismo

    Tratta extends, l'override dei metodi e le chiamate super per costruire gerarchie di classi. Consente il riutilizzo del codice e un comportamento flessibile degli oggetti.

Capitolo 3Vedi dettagli

Programmazione Asincrona in Dart

  • Lezione 1 • Future e Async/Await

    Tratta la creazione di Future, il concatenamento con then/catchError e la sintassi async/await. Consente pattern di codice asincrono puliti e leggibili.

  • Lezione 2 • Isolati per il Vero Parallelismo

    Spiega gli Isolate di Dart come heap di memoria separati per attività ad alta intensità di CPU. Insegna a generare isolate e a passare messaggi tramite porte.

  • Lezione 3 • Stream e Stream Controller

    Introduce gli Stream a sottoscrizione singola e broadcast e l'uso di StreamController. Prepara gli studenti per flussi di dati reattivi nelle app Flutter.

  • Lezione 4 • Comprendere l'Event Loop

    Spiega il modello di concorrenza a thread singolo di Dart e la coda dei microtask. Fornisce il modello mentale necessario per ragionare sull'ordine di esecuzione asincrona.

Capitolo 4Vedi dettagli

Fondamenti di Flutter e Albero dei Widget

  • Lezione 1 • Widget di Layout Principali

    Insegna Row, Column, Stack, Container ed Expanded per comporre i layout. Fornisce i blocchi fondamentali per qualsiasi progetto di schermata Flutter.

  • Lezione 2 • Widget di Input e Moduli

    Introduce TextField, Form, TextFormField e la logica di validazione. Consente la raccolta e la validazione dell'input utente nelle app Flutter.

  • Lezione 3 • Testo, Immagini e Icone

    Tratta lo styling del testo, il caricamento di immagini da asset e rete e l'uso delle icone. Fornisce agli studenti la capacità di visualizzare contenuti visivi ricchi nelle loro app.

  • Lezione 4 • Widget Stateless e Stateful

    Distingue StatelessWidget da StatefulWidget e spiega il ciclo di vita di build. Consente la scelta corretta del widget per ogni scenario UI.

  • Lezione 5 • Panoramica dell'Architettura Flutter

    Tratta i livelli del framework Flutter: Dart, widget, rendering e motore. Fornisce agli studenti un chiaro modello mentale di come Flutter esegue il rendering dell'UI.

Capitolo 5Vedi dettagli

Navigazione e Routing in Flutter

  • Lezione 1 • GoRouter per il Routing Dichiarativo

    Introduce il pacchetto GoRouter per un routing conciso, basato su URL e con protezioni. Semplifica alberi di navigazione complessi rispetto al Navigator 2.0 nativo.

  • Lezione 2 • Deep Linking e Route Dinamiche

    Configura i deep link su Android e iOS e mappa i pattern URL alle schermate. Supporta campagne di marketing e punti di ingresso esterni all'app.

  • Lezione 3 • Navigator 2.0 e l'API Router

    Spiega RouterDelegate, RouteInformationParser e il modello di navigazione dichiarativa. Abilita la navigazione guidata da URL per app web e mobile.

  • Lezione 4 • Basi di Navigator 1.0

    Tratta la navigazione push, pop e di sostituzione con l'API imperativa Navigator. Stabilisce le fondamenta prima di introdurre il routing dichiarativo.

Capitolo 6Vedi dettagli

Strategie di Gestione dello Stato

  • Lezione 1 • Scegliere la Giusta Soluzione di Stato

    Confronta tutte le soluzioni trattate per complessità, testabilità e adattamento alle dimensioni del team. Guida gli studenti a prendere decisioni architetturali informate su progetti reali.

  • Lezione 2 • Riverpod per una Gestione Robusta dello Stato

    Tratta i provider Riverpod, ref.watch e StateNotifier per uno stato sicuro a tempo di compilazione. Offre un'alternativa testabile e senza boilerplate a Provider.

  • Lezione 3 • Stato Locale con setState

    Rivisita setState per lo stato locale del widget e identifica i suoi limiti di scalabilità. Stabilisce il contesto per cui le soluzioni di stato esterne sono necessarie.

  • Lezione 4 • InheritedWidget e Provider

    Spiega i meccanismi di InheritedWidget e il pacchetto Provider costruito su di esso. Insegna la condivisione dello stato basata su ChangeNotifier attraverso l'albero dei widget.

  • Lezione 5 • Pattern BLoC con flutter_bloc

    Implementa il pattern BLoC usando Eventi, Stati e Cubit con flutter_bloc. Impone una rigorosa separazione tra UI e logica di business su larga scala.

Capitolo 7Vedi dettagli

Networking, API e Archiviazione Locale

  • Lezione 1 • Serializzazione e Deserializzazione JSON

    Insegna l'analisi manuale di JSON e i modelli generati da codice con json_serializable. Garantisce una mappatura dei dati type-safe dalle risposte API agli oggetti Dart.

  • Lezione 2 • Database SQLite con sqflite

    Crea schemi relazionali, esegue operazioni CRUD e gestisce le migrazioni con sqflite. Consente l'archiviazione strutturata di dati offline nelle app Flutter.

  • Lezione 3 • Dio per Operazioni HTTP Avanzate

    Introduce gli intercettori Dio, l'annullamento delle richieste e il caricamento/scaricamento di file. Gestisce scenari API complessi al di là del pacchetto http di base.

  • Lezione 4 • Richieste HTTP con il Pacchetto http

    Tratta le richieste GET, POST, PUT e DELETE e la gestione delle risposte con il pacchetto http. Collega le app Flutter a qualsiasi endpoint API REST.

  • Lezione 5 • Persistenza Locale con SharedPreferences

    Memorizza e recupera semplici dati chiave-valore usando il plugin SharedPreferences. Adatto per impostazioni utente, token e stato leggero dell'app.

Capitolo 8Vedi dettagli

Test, Debugging e Deployment dell'App

  • Lezione 1 • Test dei Widget in Flutter

    Usa WidgetTester per attivare i widget, simulare interazioni e verificare lo stato dell'UI. Rileva regressioni di rendering e comportamento prima del test di integrazione.

  • Lezione 2 • Unit Testing di Codice Dart e Flutter

    Tratta il pacchetto test, i gruppi di test, il mocking con Mockito e la copertura del codice. Convalida la logica di business indipendentemente dal livello UI.

  • Lezione 3 • Build e Pubblicazione negli Store

    Configura la firma, i build flavor e le build di rilascio per gli store Android e iOS. Completa l'intero ciclo di vita dallo sviluppo alla produzione.

  • Lezione 4 • Debugging con Flutter DevTools

    Esplora l'ispettore dei widget, il profiler delle prestazioni, la vista della memoria e la scheda di rete. Identifica e risolve scatti dell'UI, memory leak e frame lenti.

  • Lezione 5 • Test di Integrazione e End-to-End

    Esegue flussi completi dell'app su un dispositivo reale o emulatore usando integration_test. Convalida interi percorsi utente dall'avvio all'azione finale.

Certificazione

Il tuo certificato valido di completamento

Questo corso è per te:

  • Sviluppatori web: desiderosi di estendere le proprie competenze ad app mobili di qualità nativa.

  • Persone in fase di cambiamento di carriera: alla ricerca di un ruolo molto richiesto nell'ingegneria mobile multipiattaforma.

  • Ingegneri backend: pronti a gestire l'intero stack aggiungendo un frontend Flutter.

  • Hobbisti: desiderosi di trasformare un'idea di app personale in un prodotto reale e pubblicato.

  • Studenti di informatica: alla ricerca di competenze pratiche di sviluppo mobile oltre il curriculum.

  • Sviluppatori Android o iOS: interessati a consolidare il loro flusso di lavoro in un'unica codebase condivisa.

Cosa dicono i nostri studenti

Le sue lezioni sono perfette. Ho acquistato il pacchetto annuale e finalmente ho l'opportunità di seguire diversi argomenti di mio interesse senza dover cambiare piattaforma... vi ringrazio per tutto quello che fate, vi ho già raccomandati ad altre persone...
Giulio Carlo
Giulio CarloStudente di Marketing Digitale
Mi piace come le lezioni vanno dritte al punto e come riesco a cambiare capitoli e saltare contenuti di cui non ho bisogno.
Mariana Ferres
Mariana FerresStudentessa di Fotografia
Mi piace il contenuto e il modo di presentazione e trascrizione dei video, che accelera il processo!
Luciana Alvarenga
Luciana AlvarengaStudentessa di Nail Design
La piattaforma è veloce, semplice da usare. La diversità dei contenuti e i video complementari aiutano molto nell'apprendimento.
André Felipe
André FelipeStudente di Prompt Engineering

Principali percorsi formativi

FAQ

Chi è Dedika?

Il certificato è valido in Italia?

I corsi sono gratuiti?

Qual è il carico di lavoro del corso?

Come sono strutturati i corsi?

Come funzionano i corsi?

Qual è la durata dei corsi?

Qual è il costo o il prezzo dei corsi?

Cos’è un corso EAD o online e come funziona?

Corso PDF