Programmazione assistita da AI con GitHub Copilot
L’obiettivo è offrire un’esperienza formativa completa che spazia dalla configurazione iniziale fino agli scenari avanzati d’uso, con esercitazioni pratiche su Java, Spring e Spring Boot.
Durata: 3 giorni (21 ore totali)
Formato: Laboratorio + teoria con esempi multi-linguaggio, focus pratico su Java e Spring Boot
Introduzione a GitHub Copilot
Introduzione e Primo Avvio
Perché GitHub Copilot è uno strumento rivoluzionario
Creazione di un account GitHub
Attivazione della licenza GitHub Copilot
Installazione dell'estensione per l’IDE (VS Code o altro)
Primo test: completamento codice semplice
Riferimenti utili e risorse per iniziare
Cos'è davvero GitHub Copilot
Come funziona l’AI di Copilot (modelli LLM)
Gestione della sicurezza, privacy e dei dati
Tutela del copyright e codice generato
Esplorazione del GitHub Copilot Trust Center
Funzionalità di GitHub Copilot in Azione
Completamento del Codice
Come Copilot suggerisce codice in tempo reale
Personalizzazione delle impostazioni e dell’interfaccia
Scorciatoie da tastiera per lavorare in modo fluido
Copilot Chat
Prompt engineering: scrivere comandi efficaci
Controllo della conversazione: follow-up, chiarimenti, modifiche
Differenze tra Chat e completamento automatico
Applicazioni Pratiche di GitHub Copilot
Imparare un Nuovo Linguaggio
Usare Copilot per esplorare un nuovo linguaggio (esempi: Python, JavaScript, Java)
Setup ambiente e creazione di una semplice app console
Aggiunta di nuove funzionalità e spiegazioni automatiche
Esercitazione: mini-progetto multi-linguaggio
Scrivere Test con Copilot
Creazione di test unitari per codice esistente
Introduzione al Behavior Driven Development (BDD)
Esercitazione pratica: test su componenti Java/Spring
Debugging Assistito
Riconoscimento e correzione automatica di errori comuni
Analisi di eccezioni e terminal errors con Copilot Chat
Esercitazione: debug di un’app Spring Boot
Refactoring del Codice
Identificazione di codice duplicato e refactoring guidato
Miglioramento dei nomi, validatori e logica
Commenti generati automaticamente
Esercitazione: refactoring di un progetto Java esistente
Sicurezza del Codice
Identificazione di vulnerabilità e best practice
Fix automatizzati con suggerimenti AI
Esercitazione: hardening della sicurezza in Spring Boot
GitHub Copilot per DevSecOps
Integrazione AI in pipeline CI/CD
Automazione della configurazione infrastrutturale
Containerizzazione semplificata
Discussione su casi d’uso reali
Copilot in Ambienti di Sviluppo Diversi
Utilizzo di Copilot con IDE alternativi (JetBrains, Azure Data Studio, Neovim, CLI)
Esperienza cross-platform
Conversione Universale
Traduzione da linguaggio naturale a codice
Conversione tra framework (es. da Express a Spring Boot)
Migrazione di database e modernizzazione di sistemi legacy
Approfondimenti e Scenari Avanzati
AI Responsabile
Introduzione all’uso responsabile dell’AI nello sviluppo
Come GitHub Copilot implementa principi etici
Limiti e considerazioni nell’utilizzo dell’AI
GitHub Copilot nel Ciclo di Vita del Software
Come l’AI si integra nel Software Development Life Cycle (SDLC)
Livelli di adozione e impatti organizzativi
Riflessione: il futuro del lavoro nello sviluppo software
Progetto Finale: Applicazione Spring Boot con GitHub Copilot
Sviluppo completo di un’app Java Spring Boot con repository, controller, servizi REST e test
Uso di Copilot in tutte le fasi: scaffolding, logica di business, test, documentazione e CI/CD
Debrief finale e condivisione esperienze
Requisiti per i Partecipanti
Conoscenze di base nella programmazione (Java preferito)
Visual Studio Code o altro IDE supportato
Licenza attiva di GitHub Copilot