Programma del corso biennale di Linguaggi di programmazione
I° anno
- Classificazione dei linguaggi
(basso, alto, etc.; interpreti, compilatori, script, etc.; imperativi, a oggetti, non
imperativi, etc.) - Fasi di produzione del software - Struttura e funzionamento di un assemblatore e un compilatore - Paradigmi di programmazione (strutturata, funzionale, logica, a oggetti, etc.) - Programmazione tradizionale ad alto livello: il linguaggio C in ambiente mono-tasking |
|
- Variabili e loro dichiarazione - Costanti - Istruzioni di controllo - Funzioni (funzionamento dello stack, etc.) - Uso delle librerie |
|
- Programmazione a oggetti in ambiente multi-tasking: il Visual Basic | |
- Oggetti: metodi, proprietą - Eventi: gestori di eventi - Oggetti predefiniti e interazione con il S.O. - Grafica e multimedia |
Le esercitazioni pratiche verteranno su argomenti quali:
aiuto alla composizione, sintesi del suono, composizione algoritmica, analisi del suono,
analisi automatica di brani, sequencing MIDI, etc. e/o temi proposti dal docente di
Musica elettronica.
Lesame consisterą nella discussione dei progetti sviluppati durante il corso e in
un colloquio volto a verificare il grado di padronanza delle tecniche studiate.
II° anno
- Programmazione avanzata: ambiente Visual C/C++ per Windows a 32 bit | |
- Creazione e uso di classi - Proprietą delle classi - Controlli standard - Gestione dei messaggi di sistema - Uso delle MFC - Uso delle API di sistema - Costruzione di DLL - Gestione delle funzionalitą di multi-threading del S.O. - Uso di Callback routines e cenni sulla gestione asincrona dellI/O (tramite interrupt) - Utilizzazione di DirectSound |
|
- Linguaggi specializzati: linguaggi del Web | |
- HTML - Javascript (cenni) - Java (brevi cenni) |
|
- Linguaggi specializzati: Csound | |
- Studio di alcune parti del codice sorgente C - Struttura degli OpCode - Argomento da definire in parallelo con il corso di Musica elettronica |
|
- Linguaggi a basso livello: cenni di Assembler dei processori della famiglia Intel | |
- Struttura a grandi blocchi delle parti
interne di una CPU Pentium - Registri e loro significato e uso - Set di istruzioni Assembler e loro formato - Cenni sulle interruzioni - Esempi di programmazione in ambiente mono-tasking |
Le esercitazioni pratiche verteranno sugli stessi argomenti descritti nel programma del I° anno. Lesame finale consisterą nella discussione relativa alla realizzazione di un progetto importante sviluppato, a partire dalle ultime lezioni del corso, in gruppo o individualmente; č da preferirsi una realizzazione in cooperazione che prepari i candidati al lavoro di equipe tipico della produzione di musica con strumenti elettroacustici . I docenti proporranno i temi tra cui scegliere quello relativo al progetto finale; sono ammessi, previa approvazione da parte del docente del corso e da quello di Musica elettronica, progetti proposti dai candidati. I migliori lavori saranno pubblicati sul sito Web del Conservatorio.