Programmazione (Informatica musicale)
Indice
- Avvisi
- Orario
- Appelli
- Compitini
- Programma del corso
- Modalità d'esame
- Ricevimento studenti
- Link utili
Avvisi
- Esito prova di laboratorio di settembre. Ho pubblicato gli esiti della prova di laboratorio di settembre.
Orario
Le lezioni si svolgeranno con il seguente orario:
- martedì ore 8:30-10:30, aula 208 (via Celoria): teoria;
- mercoledì ore 8:30-10:30, aula beta (via Comelico): teoria;
- giovedì ore 12:30-14:30, aula beta (via Comelico): teoria;
- venerdì ore 8:30-12:30, aula sigma (via Comelico): laboratorio.
Si noti che le lezioni di teoria iniziano esattamente all'ora indicata (cioè non è previsto alcun quarto d'ora accademico all'inizio delle lezioni), per cui si invitano gli studenti ad arrivare con puntualità.
Appelli
Il seguente elenco contiene le date presunte degli appelli. Le date saranno da ritenersi provvisorie, e verranno confermate con l'approssimarsi degli appelli stessi. Si noti che presso il SIFA saranno aperte iscrizioni distinte per ciascuna delle tre parti di cui l'appello è composto, e gli studenti che intendono partecipare all'appello devono iscriversi a tutte e tre (eccettuato per lo scritto di gennaio/febbraio, nel caso abbiano ottenuto la sufficienza nei compitini: vedi sotto).
Laboratorio | Scritto | Orale | Esiti | |
---|---|---|---|---|
Gennaio 2013 | 21/1 | 24/1 | 30/1 | Esiti |
Febbraio 2013 | 11/2 | 13/2 | 20/2 | Esiti |
Giugno 2013 (I) | 3/6 | 5/6 | 7/6 | Esiti |
Giugno 2013 (II) | 24/6 | 26/6 | 28/6 | |
Settembre 2013 | 9/9 | 11/9 | 13/9 |
Compitini
Le date dei compitini sono per il momento da ritenersi presunte.
I Compitino (28/11/2012) | Esercizi di preparazione | Testo e soluzioni | Esiti |
---|---|---|---|
II Compitino (17/01/2013) | Esercizi di preparazione | Testo e soluzioni | Esiti |
Tabella riassuntiva dell'esito dei compitini |
Programma di massima del corso di Programmazione
Il corso di Programmazione è un corso di 18 crediti finalizzato all'insegnamento della programmazione. Trattandosi di un corso di base, non richiede alcuna conoscenza specifica pregressa; obiettivo del corso è formare gli studenti alla programmazione in senso tradizionale, mediante l'uso di un linguaggio imperativo; il linguaggio insegnato nel corso sarà il C.
Il corso si compone di due moduli, svolti in parallelo: questa pagina descrive solo il modulo di Programmazione (teoria), mentre il Laboratorio di programmazione, tenuto da Massimo Santini, ha una sua propria pagina web.
Libri di testo consigliati
Il libro consigliato per il corso è:
- [AMA] "Programmazione in C", di K. N. King (ISBN: 9788850328697).
Per la prima parte si farà riferimento a
- [FAP] "Dispense per la prima parte del corso di Fondamenti di Architetture e Programmazione" di Paolo Boldi.
Altri testi di approfondimento di cui consigliamo la lettura sono:
- [KR] "Il linguaggio C", di Brian Kernighan e Dennis M. Ritchie, edito da Pearson Education Italia, Milano (ISBN: 887192200X).
- [PPr] "Programmazione nella pratica", di Brian Kernighan e Rob Pike, edito da Pearson Education Italia, Milano (ISBN: 8871920724).
- [PPe] "Programming Pearls" di Jon Bentley, edito da Addison-Wesley (ISBN: 0201657880).
Contenuti del corso
- Introduzione, hardware e software, macchina di Von Neumann, algoritmi, programmi
- Rappresentazione dell'informazione, cenni di assembly, linguaggi, traduttori (FAP)
- Introduzione al C, i primi programmi (AMA 1+2+3)
- Espressioni (AMA 4)
- Selezione (AMA 5)
- Cicli (AMA 6)
- Tipi elementari (AMA 7)
- Array (AMA 8) e stringhe (AMA 13 [cenni])
- Funzioni e struttura dei programmi (AMA 9+10)
- Aritmetica dei puntatori (AMA 11+12, escluso 12.4) e complementi di uso delle stringhe (AMA 13)
- Strutture, unioni ed enumerazioni (AMA 16)
- Puntatori (argomenti avanzati) (AMA 17)
- Preprocessore e programmi di grandi dimensioni, Input/Output e file (AMA 14+15+22)
Modalità d'esame
- Compitini: durante il corso si terranno due compitini (a novembre e a gennaio), cui possono partecipare tutti gli studenti; il compitino costituisce un esonero dallo scritto di gennaio e febbraio: gli studenti che vogliano sostenere l'esame a gennaio o febbraio e che abbiano ottenuto la sufficienza in entrambi i compitini svolgeranno una prova di laboratorio ridotta;
- Appelli di gennaio e febbraio 2013: gli appelli di gennaio e febbraio sono costituiti da:
- uno scritto (facoltativo per chi abbia i compitini sufficienti; se viene sostenuto, comunque, i compitini vengono annullati);
- una prova di programmazione individuale (ridotta per gli studenti che abbiano conseguito la sufficienza nei compitini);
- un orale, obbligatorio per tutti, che determina il voto finale.
- Appelli successivi: gli appelli successivi a quello di febbraio sono costituiti da:
- uno scritto, obbligatorio per tutti (i compitini perdono la propria validità l'appello di febbraio);
- una prova individuale di programmazione;
- un orale seguito da verbalizzazione.
- Salto di appello: chi risulta insufficiente negli appelli di gennaio o giugno non potrà sostenere gli appelli di febbraio e luglio, rispettivamente.
- Iscrizione agli appelli: gli studenti che vogliano sostenere l'esame a un dato appello devono iscriversi al SIFA (tramite il @SIFA on-line, o recandosi presso gli appositi chioschi), sia per il laboratorio che per lo scritto che per l'orale. Questo vale per tutti gli appelli, compresi quelli di gennaio e febbraio, anche per gli studenti che abbiano sostenuto con successo il compitino.
Ricevimento studenti
Il docente riceve nel suo studio di Via Comelico, 39/41 (II piano), su appuntamento. Un appuntamento può essere fissato a lezione, oppure inviando una e-mail al docente e attendendo una risposta di conferma.
Link utili
Tutti gli avvisi e le informazioni importanti relativi a questo corso saranno resi pubblici mediante questa pagina web. Inoltre, in via sperimentale, è attivato un gruppo di discussione sul corso aperto agli studenti e a chiunque sia interessato, e su cui pubblicherò eventuali avvisi urgenti.
Altri link utili sono:
- pagina del modulo di laboratorio tenuto da Massimo Santini.
- homepage del gruppo di discussione sul corso, ospitato da Google Groups.
- dsy.it, l'unofficial support site dei corsi di laurea del Dipartimento di Scienze dell'Informazione e del Dipartimento di Informatica e Comunicazione dell'Università degli Studi di Milano.
- pagina di riferimento per il GCC, il compilatore C della GNU che useremo come riferimento.
- pagina di Wikipedia sulle distribuzioni Linux.
- Cygwin, porting degli strumenti GNU per Windows.
- alcune FAQ pubbliche di interesse sugli argomenti del corso sono: