Struttura del corso
Durata totale: 450 ore (300 ore formazione + 150 ore stage)
Metodo: 70% pratica – 30% teoria
Modalità: Lezioni frontali, esercitazioni guidate, live coding, progetto finale
MODULO 1 – Fondamenti di Programmazione e C# (60 ore)
Introduzione a C# e .NET (20 ore)
- Cos’è la programmazione e a cosa serve
- Breve storia di C# e della piattaforma .NET
- Differenza tra .NET Framework e .NET moderno
- Dove viene usato C# oggi (desktop, web, servizi)
- Installazione e configurazione dell’ambiente di sviluppo
- Primo programma in C#
Concetti base di programmazione (40 ore)
- Algoritmi e logica di base
- Variabili e tipi di dati principali
- Operatori matematici e logici
- Input e output da console
- Stringhe e formattazione del testo
MODULO 2 – Controllo del Flusso e Strutture Dati di Base (50 ore)
Strutture di controllo (25 ore)
- Condizioni: if, else, switch
- Cicli: for, while, do-while
- Uso di break e continue
Collezioni di base (25 ore)
- Array e array multidimensionali
- Liste (List<T>)
- Dizionari (Dictionary<TKey, TValue>)
- Iterazione con foreach
MODULO 3 – Programmazione Orientata agli Oggetti (50 ore)
Concetti fondamentali OOP (50 ore)
- Cos’è un oggetto e una classe
- Campi, proprietà e metodi
- Costruttori
- Incapsulamento e modificatori di accesso
- Ereditarietà
- Polimorfismo
- Classi astratte
- Interfacce
- Enum e struct
- Record (introduzione semplificata)
MODULO 4 – Accesso ai Dati (80 ore)
Introduzione ai database relazionali (10 ore)
- Cos’è un database relazionale
- Concetti di base: tabelle, colonne, righe, chiavi primarie e chiavi esterne
- SQL Server: installazione e configurazione di base
- SQL Server Management Studio (SSMS)
- Operazioni SQL di base: SELECT, INSERT, UPDATE, DELETE
ADO.NET (30 ore)
- Cos’è ADO.NET e come funziona
- Connection String: come configurare la connessione al database
- SqlConnection: aprire e chiudere connessioni
- SqlCommand: eseguire query e comandi SQL
- SqlDataReader: leggere dati in modo forward-only
- SqlParameter: query parametrizzate per prevenire SQL injection
- Gestione delle transazioni con SqlTransaction
- DataTable e DataSet: lavorare con dati disconnessi
- Best practices: using statement e gestione delle risorse
- Operazioni CRUD complete con ADO.NET
Entity Framework Core (40 ore)
- Cos’è un ORM (Object-Relational Mapping)
- Introduzione a Entity Framework Core
- Installazione dei pacchetti NuGet necessari
- DbContext: configurazione e utilizzo
- DbSet e mapping delle entità
- Code First vs Database First
- Migrations: creare e aggiornare il database
- LINQ to Entities: query con sintassi fluent e query syntax
- Operazioni CRUD con EF Core
- Relazioni tra entità: One-to-One, One-to-Many, Many-to-Many
- Eager loading, Lazy loading e Explicit loading
- Tracking vs No-Tracking queries
- Data Annotations e Fluent API per la configurazione del modello
- Raw SQL queries in EF Core
- Gestione delle transazioni in EF Core
- Best practices e ottimizzazione delle performance
MODULO 5 – Gestione Errori, LINQ e Asincronia (40 ore)
Gestione degli errori (15 ore)
- Cos’è un’eccezione
- Try-catch-finally
- Creazione di eccezioni personalizzate
- Buone pratiche
LINQ e manipolazione dei dati (15 ore)
- Cos’è LINQ
- Query semplici su collezioni
- Filtrare, ordinare e trasformare dati
Programmazione asincrona (10 ore)
- Concetto di asincronia
- async e await
- Task e Task<T>
MODULO 6 – Progetto Finale e Best Practices (20 ore)
Progetto pratico (15 ore)
Sviluppo di una applicazione console completa con accesso ai dati, ad esempio:
- Gestione di una biblioteca, negozio o sistema di prenotazioni
- Operazioni CRUD complete con database
- Utilizzo di ADO.NET o Entity Framework Core
- Gestione delle relazioni tra entità
- Menu interattivo e navigazione
- Gestione degli errori e validazione input
Buone pratiche e introduzione al testing (5 ore)
- Codice leggibile e manutenibile
- Principi base del Clean Code
- Introduzione ai test automatici
MODULO 7 – Stage in Azienda / Project Work (150 ore)
Lo stage ha l’obiettivo di consolidare le competenze acquisite durante il corso attraverso attività pratiche in contesto lavorativo reale oppure tramite project work simulato.
Attività previste
- Affiancamento a sviluppatori o tutor tecnici
- Analisi di semplici requisiti funzionali
- Sviluppo o manutenzione di applicazioni C#
- Scrittura e modifica di codice esistente
- Debug e risoluzione di problemi
- Utilizzo di strumenti di versionamento (Git)
Obiettivi dello stage
- Applicare le conoscenze teoriche a casi reali
- Migliorare l’autonomia nello sviluppo software
- Comprendere il flusso di lavoro di un team tecnico
- Prepararsi all’ingresso nel mondo del lavoro IT
Strumenti utilizzati
- Visual Studio 2022 Community
- SQL Server Express o LocalDB
- SQL Server Management Studio (SSMS)
- Git e GitHub (introduzione pratica)
- Debugger integrato
Valutazione
- Esercitazioni pratiche durante il corso
- Valutazione del progetto finale
Risultati attesi
Al termine del corso lo studente sarà in grado di:
- Scrivere programmi in C# partendo da zero
- Comprendere e applicare la programmazione orientata agli oggetti
- Gestire errori e dati in modo corretto
- Lavorare con database relazionali utilizzando SQL
- Utilizzare ADO.NET per l’accesso ai dati
- Sviluppare applicazioni con Entity Framework Core
- Sviluppare una applicazione completa con database
- Proseguire lo studio verso .NET avanzato, ASP.NET Core o sviluppo web
450 ore
Destinatari
- Neodiplomati e neolaureati che vogliono acquisire competenze pratiche subito spendibili nel lavoro
- Persone in riqualificazione professionale disoccupati o in cerca di nuova occupazione
- Lavoratori che desiderano cambiare settore e entrare nel mondo IT
- Professionisti di altri ambiti come impiegati, tecnici, amministrativi che vogliono acquisire competenze digitali avanzate
- Principianti assoluti
- Persone senza esperienza di programmazione
- Persone interessate al mondo dell’informatica
0+
Corsi Attivi
0+
Ore di Formazione
0+
Formatori
0+
Studenti Formati



