Codice
Durata
Programmazione assistita da AI con GitHub Copilot
CODICE: AIT46
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.
Modalità di erogazione
In aula o Live Virtual Classroom
Attestato di partecipazione
Al termine del corso verrà rilasciato l’attestato di frequenza
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
- Business applications
- Sicurezza informatica
- ISO
- EGovernement
- Database, big data, machine learning e ia
- HR & Organization
- Giuridico Normativa
- Cloud & virtualization
- Programming & development
- PA
- Metodologie di Service & Project Management
- Management & Collaboration
- Microservizi
- Sistemi operativi
- Marketing & Sales
- Formazione AI
- Networking
- Office & collaboration
- Web design