Revisiting the Performance of Generative Artificial Intelligence on Introductory Object-Oriented Programming Assessments: Insights from 2026
Questo studio del 2026 valuta cinque sistemi avanzati di IA generativa su test introduttivi alla programmazione a oggetti, riscontrando che, sebbene generalmente superino la media degli studenti e mostrino un miglioramento significativo rispetto all'anno precedente, essi incontrano ancora difficoltà con concetti avanzati specifici come interfacce e classi astratte, nonché con compiti relativi alla grafica.
Articolo originale sotto licenza CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo
Nelle aule dove i giovani imparano per la prima volta a creare software, è arrivato un nuovo tipo di assistente. Questi non sono tutor umani, ma modelli linguistici di grandi dimensioni: programmi informatici addestrati su vaste biblioteche di testo e codice che possono leggere una domanda e scrivere un programma in risposta. Per anni, gli educatori hanno osservato l'evoluzione di questi strumenti, chiedendosi se potessero davvero comprendere la logica della programmazione o se stessero semplicemente imitando dei modelli. La questione è importante perché la programmazione viene spesso insegnata attraverso uno stile specifico chiamato programmazione orientata agli oggetti, in cui il codice è organizzato in unità autosufficienti che contengono dati ed eseguono azioni, proprio come un oggetto del mondo reale possiede sia proprietà che comportamenti. Se questi sistemi artificiali riescono a risolvere gli stessi problemi degli studenti, ciò cambia il modo in cui insegniamo, il modo in cui valutiamo e il modo in cui pensiamo al futuro dell'apprendimento del codice.
I ricercatori dell'Università di Tartu, in Estonia, hanno deciso di sottoporre cinque dei sistemi di intelligenza artificiale più popolari a una prova in un vero contesto universitario. Non hanno chiesto alle macchine di risolvere enigmi astratti o di scrivere codice nel vuoto. Al contrario, hanno preso esattamente gli stessi test di programmazione e le stesse domande d'esame finale utilizzati in un corso introduttivo per studenti del primo anno e li hanno somministrati direttamente alle macchine. I compiti erano scritti in estone, la lingua locale, e i ricercatori non hanno fornito alle macchine istruzioni speciali o suggerimenti. Hanno semplicemente chiesto alle macchine di risolvere i problemi come farebbe uno studente, utilizzando le stesse regole di valutazione che gli insegnanti applicano al lavoro umano. L'obiettivo era vedere se questi strumenti potessero stare al passo con lo studente medio e, cosa più importante, vedere dove inciampano ancora.
I risultati hanno mostrato che i sistemi di intelligenza artificiale sono straordinariamente capaci, spesso superando gli studenti umani con cui sono stati confrontati. Nel primo test di programmazione, che richiedeva la creazione di un programma completo con molteplici parti, ogni sistema tranne uno ha ottenuto un punteggio superiore alla media degli studenti. Un sistema, uno strumento integrato in Microsoft Office, non è riuscito a produrre un programma funzionante in un caso a causa di un piccolo errore di sintassi, ma gli altri hanno ottenuto costantemente voti eccellenti. In un secondo test, leggermente più difficile e riguardante la gestione di dati più complessi, le macchine hanno dominato nuovamente, con la maggior parte di esse che otteneva punteggi perfetti o quasi perfetti. Anche nell'esame finale, che copriva l'intero corso e includeva domande concettuali insidiose, le macchine hanno generalmente ottenuto punteggi ben al di sopra della media della classe.
Tuttamente, le macchine non sono perfette e i loro errori rivelano dove la loro comprensione è ancora superficiale. Sebbene fossero in grado di scrivere programmi lunghi e complessi che giravano senza crashare, occasionalmente trascuravano dettagli specifici che un insegnante umano avrebbe colto. Ad esempio, alcuni sistemi non riuscivano a formattare correttamente il testo o dimenticavano di includere un'istruzione necessaria per far funzionare il codice, portando a errori che impedivano l'esecuzione del programma. Avevano inoltre difficoltà con certi concetti avanzati, come il modo in cui le diverse parti di un programma debbano comunicare tra loro attraverso regole specifiche chiamate interfacce. In queste aree, le macchine producevano talvolta codice che sembrava corretto, ma che non faceva effettivamente ciò che la domanda richiedeva. Inoltre, lo studio ha notato che le prestazioni erano limitate nelle domande relative alla grafica che comportavano l'interpretazione di immagini, riflettendo una sfida più ampia che l'IA affronta nell'elaborare informazioni non testuali.
I ricercatori hanno scoperto che questi sistemi sono migliorati significativamente rispetto alle valutazioni di appena un anno prima. Laddove le versioni precedenti di questi strumenti avrebbero potuto fallire nel superare il corso, i nuovi modelli ottengono ora costantemente punteggi nella fascia alta delle prestazioni degli studenti. Eppure, è emerso un modello chiaro: le macchine eccellono nel seguire le istruzioni per costruire strutture standard, ma possono vacillare quando un compito richiede un ragionamento profondo su come i diversi pezzi di un sistema si incastrino concettualmente tra loro. Spesso aggiungono funzionalità non richieste o utilizzano tecniche avanzate che gli studenti non avevano ancora appreso, suggerendo che stiano attingendo da un pool di conoscenze molto più ampio rispetto al programma del corso.
In definitiva, lo studio dipinge l'immagine di uno strumento potente ma non ancora pienamente affidabile per ogni esigenza educativa. I sistemi di intelligenza artificiale possono generare codice funzionante che spesso supera lo studente medio, dimostrando di aver padroneggiato la meccanica della programmazione. Ma commettono ancora errori specifici e ricorrenti che indicano una mancanza di vera comprensione della logica sottostante. Per gli educatori, questo significa che, sebbene questi strumenti possano essere utilizzati per supportare l'apprendimento, non possono ancora sostituire la necessità di una supervisione umana e di una progettazione attenta delle valutazioni che testino la comprensione concettuale profonda piuttosto che la semplice capacità di produrre codice. Le macchine stanno migliorando ogni anno, ma hanno ancora molta strada da fare prima di poter pensare davvero come un programmatore.
Sommerso dagli articoli nel tuo campo?
Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.