- Docente: Michael Lodi
- Crediti formativi: 5
- SSD: INF/01
- Lingua di insegnamento: Italiano
- Moduli: Michael Lodi (Modulo 1) Michael Lodi (Modulo 2) Luca Sciullo (Modulo 3)
- Modalità didattica: Convenzionale - Lezioni in presenza (Modulo 1) Convenzionale - Lezioni in presenza (Modulo 2) Convenzionale - Lezioni in presenza (Modulo 3)
- Campus: Bologna
-
Corso:
Percorso abilitante in
B016 - laboratori di scienze e tecnologie informatiche (cod. 6085)
Valido anche per Percorso abilitante in A041 - scienze e tecnologie informatiche (cod. 6081)
Percorso abilitante in A041 - percorso abilitante 30 cfu ai sensi dell'allegato 2 del dpcm 4 agosto 2023 - scienze e tecnologie informatiche (cod. 6106)
Percorso abilitante in B016 - percorso abilitante 30 cfu ai sensi dell'allegato 2 del dpcm 4 agosto 2023 - laboratori di scienze e tecnologie informatiche (cod. 6112)
Conoscenze e abilità da conseguire
- Progettare attività didattiche innovative per l'insegnamento degli algoritmi e delle strutture dati (inclusi gli aspetti della definizione, correttezza e complessità computazionale di algoritmi)
- Progettare attività di drammatizzazione degli algoritmi "notevoli"
- Conoscere i principali costrutti teorici della didattica della programmazione (es. misconcezioni, notional machine, program comprehension) e le relative metodologie didattiche specifiche (es. use-modify-create)
- Conoscere e valutare criticamente gli ambienti, gli strumenti e le caratteristiche dei linguraggi di programmazione visuale a blocchi
- Analizzare le caratteristiche di diversi linguaggi e paradigmi di programmazione in funzione ai diversi obiettivi e contesti didattici
- Conoscere e saper applicare diverse metodologie didattiche per l'insegnamento di specifici argomenti di programmazione: sviluppo web e query languages
- Conoscere e saper valutare criticamente strumenti a supporto della didattica degli algoritmi e della programmazione, quali visualizzatori, IDE e debugger didattici
- Conoscere le principali metodologie didattiche relative agli algoritmi di crittografia classici e moderni
Contenuti
Strumenti concettuali per la didattica della programmazione
-
Conoscenza sintattica, concettuale, strategica
-
Misconcezioni e macchina concettuale
-
Schemi / pattern elementari (es. per l’iterazione), ruoli delle variabili
-
Program comprehension & block model
-
Programmazione a blocchi e relativi ambienti/strumenti
-
Analisi delle caratteristiche dei linguaggi e dei paradigmi di programmazione in funzione agli obiettivi e al contesto didattici
Metodologie didattiche specifiche per lo scaffolding durante l’insegnamento programmazione.
Strumenti (quali visualizzazione della macchina concettuale, IDE e debugger didattici)
Didattica degli algoritmi e delle strutture dati (inclusa correttezza, complessità e algoritmi classici)
-
Strumenti di visualizzazione e supporto alla scrittura di algoritmi
-
Drammatizzazione di algoritmi
Didattica della programmazione web e linguaggi per l’interrogazione di database
Testi/Bibliografia
Articoli, slide, materiale, consigli di lettura saranno resi disponibili durante il corso, su Virtuale
Metodi didattici
Lezioni frontali con discussione
Esercitazioni, apprendimento collaborativo, simulazioni
Modalità di verifica e valutazione dell'apprendimento
L'idoneità al corso verrà data sulla base dell'accertamento della percentuale minima di frequenza e la consegna di eventuali esercitazioni richieste durante il corso. La valutazione dell'apprendimento dei contenuti dell'insegnamento è contestuale alla prova finale per l’acquisizione dell'abilitazione all'insegnamento nella classe di concorso del percorso formativo, prevista dall'Art. 9 del DPCM 4 agosto 2023.
Orario di ricevimento
Consulta il sito web di Michael Lodi
Consulta il sito web di Luca Sciullo
SDGs

L'insegnamento contribuisce al perseguimento degli Obiettivi di Sviluppo Sostenibile dell'Agenda 2030 dell'ONU.