L’obiettivo del corso è quello di introdurre lo studente ai concetti fondamentali relativi ai calcolatori e alla loro programmazione. Il corso fornirà conoscenze sull’organizzazione di un’architettura di elaborazione, sulla struttura dei principali programmi applicativi, e sulla programmazione in linguaggio Python, con riferimento ai principali tipi di dato e costrutti di programmazione. Nell’ambito del corso lo studente acquisirà le competenze per realizzare semplici applicativi utilizzando il linguaggio Python, la capacità di valutarne in modo empirico le prestazioni e di scegliere le migliori strutture dati, fra quelle disponibili nel linguaggio, per realizzare determinati compiti.
Lo studente acquisirà le competenze per realizzare semplici applicativi utilizzando il linguaggio Python, la capacità di valutarne in modo empirico le prestazioni e di scegliere le migliori strutture dati, fra quelle disponibili nel linguaggio, per realizzare determinati compiti. In particolare, al termine dell'insegnamento lo studente deve essere in grado di
L'insegnamento si svolge in 12 settimane, ciascuna delle quali prevede di norma 4 ore di lezioni in aula (comprensive di teoria ed esercizi) e 3 ore di esercitazioni in laboratorio informatico.
Nozioni base sui calcolatori: rappresentazione dei dati e aritmetica degli elaboratori; cenni sull'architettura del calcolatore e sui sistemi operativi finalizzati alla comprensione base dell'esecuzione di programmi.
Introduzione alla programmazione (usando Python): i linguaggi di programmazione di alto livello; stato e cambiamento di stato (variabili, espressioni, istruzioni); programmazione strutturata e funzioni; tipi base e strutturati; classi e oggetti; algoritmi semplici e loro implementazione.
Programmazione in piccolo (usando Python): progettazione di programmi sequenziali di dimensione contenuta a partire dalla specifica informale del problema; compilazione/interpretazione di programmi; esecuzione del codice; idee base di testing e debugging.
Il materiale didattico usato a lezione sarà reso disponibile su aulaweb. Inoltre è possibile consultare e scaricare documentazione disponibile online in Inglese https://docs.python.org/3/ e Italiano https://www.python.it/doc/
Ricevimento: Vedi pagina web http://www.disi.unige.it/person/MoggiE/, in subordine concordare un appuntamento per email (moggi@unige.it)
EUGENIO MOGGI (Presidente)
MANUELA CHESSA
GIOVANNI LAGORIO
GIANNA REGGIO
ARMANDO TACCHELLA
04/03/2019
L'esame consiste in due prove, che possono essere sostenute indipendentemente:
Maggiori dettagli saranno dati nel corso delle lezioni sulla soglia per il superamento di una prova, e su come la valutazione delle prove contribuisce al voto finale. Inoltre per gli studenti frequentanti sono previste consegne in itinere, con correzione a campione, che daranno diritto ad un bonus sul voto finale.
La prova a quiz serve a verificare la conoscenza delle nozioni fondamentali e la capacità di analizzare e comprendere pezzi di codice. La prova di laboratorio serve ad accertare la capacità di scrivere, modificare, eseguire e testare programmi.
Pagina web dell'insegnamento http://www.disi.unige.it/person/MoggiE/FI-IG