====== Informatica - Corso B ====== ===== Informazioni pratiche ===== * Vedi la {{:fisica:informatica:201415:presentazione.pdf|presentazione del corso}} per lo scopo, il programma di massima ed altre informazioni * Docente: [[http://www.di.unipi.it/~susanna/|Susanna Pelagatti]], stanza 346/DE, dip. Informatica * Ricevimento elettronico: contattate il docente per posta elettronica **inviando il file del programma ed indicazioni chiare sull'errore e su come compilare ed eseguire per riprodurre l'errore stesso**. * Orario del corso * Lezioni: Mercoledi 9--11 aula F1 * Esercitazioni/Lezioni: 14--18 aula I * Ricevimento: Martedi 9--12, oppure Mercoledi' al termine della lezione di laboratorio, oppure su appuntamento. * La frequenza del corso **non e' obbligatoria** ma fortemente consigliata. ===== Lezioni ed esercitazioni ===== Vedete la pagina delle [[.esercitazioni:|lezioni ed esercitazioni]] per i materiali relativi a ogni lezione ed esercitazione. ===== Avvisi urgenti ===== Per tutti gli avvisi urgenti vedete nella pagina degli [[avvisi]].\\ E' possibile richiedere di essere avvisati automaticamente via e-mail ogni volta che un nuovo avviso viene postato. Seguire le istruzioni indicate nella pagina stessa. ===== FAQ ===== Per avere risposte alle domande piu' frequenti, vedere la pagina relativa alle [[.FAQ|FAQ]] ===== Libro di testo ===== Kelley, Pohl. **C: Didattica e Programmazione** (seconda edizione), Addison-Wesley, 2004. ==== Virtual Machine (VirtualBox) ==== E' disponibile un disco virtuale (formato .vmdk) contenente una installazione completa di [[http://xubuntu.org|XUbuntu]] con tutti gli strumenti di sviluppo richiesti per il corso, che può essere fatta partire utilizzando (ad esempio) il sistema di virtualizzazione [[http://www.virtualbox.org|VirtualBox]]. [[http://calvados.di.unipi.it/storage/teaching/LinuxVM/README.pdf| Qui]] è possibile scaricare alcune semplici note (in formato pdf) che descrivono come creare una macchina virtuale (VM) sotto VirtualBox partendo da un disco esistente. Il disco virtuale compresso (.zip) della VM è scaricabile sequendo il [[http://calvados.di.unipi.it/storage/teaching/LinuxVM/xubuntu.vmdk.zip| link]] (circa 3GB !). ==== Installazione Cgywin ==== Potete trovare istruzioni dettagliate [[http://wiki.rootzwiki.com/Step_by_step_guide_how_to_install_cygwin|qua]] e un video [[https://www.youtube.com/watch?v=zRbbDkDb5UM|qua]]. I pacchetti base da installare sono ''gcc-core'', ''make'', ''gdb'' e ''ddd'' per il debugging grafico. Contattatemi se avete problemi.\\ Per poter utilizzare l'ambiente grafico (quindi debugger grafici come ''ddd'') potrebbe essere necessario installare i pacchetti relativi all'ambiente X. Quindi, se lanciando l'applicazione vi viene segnalato un errore di accesso al display dovete: * riavviare il setup di cygwin * selezionare i pacchetti ''xorg-server'', ''xinit'', ''xorg-docs'' (come specificato [[http://x.cygwin.com/docs/ug/setup-cygwin-x-installing.html|qua]]) * completare l'installazione * avviare un terminale ''cygwin'' e settare il display con export DISPLAY=localhost:0.0 * avviare il server X con il comando ''startixwin'' a questo punto vi apparira' un terminale in una nuova finestra, da qua lanciate ''ddd'' o le altre applicazioni grafiche ==== Altro materiale ==== * (introduttivo sulla programmazione)S. Ceri, D. Mandrioli, L. Sbattella. **Informatica: programmazione** (seconda edizione). McGraw-Hill 2006. * (approfondimenti su algoritmi e strutture dati) P. Crescenzi, G.Gambosi, R. Grossi, G. Rossi. **Strutture di dati e algoritmi. Progettazione, analisi e programmazione** (Seconda edizione). Pearson 2012. * Manuali in linea dei tool di sviluppo GNU [[http://www.gnu.org/software/gcc/onlinedocs/|gcc]][[http://www.gnu.org/software/emacs/manual/|emacs]][[http://www.gnu.org/software/ddd/manual/|ddd]][[http://www.sunsite.ualberta.ca/Documentation/Gnu/gdb-4.18/html_chapter/gdb_toc.html|GDB]] * {{:lcs:lcs09:gdb-commands.pdf|Sommario GDB commands}} * [[lcs:lcs07:emacs_commands|Un sommario di comandi di emacs]] * [[lcs:lcs07:bash_commands|Un sommario basico di comandi bash]] * {{:lcs:lcs07:bashquickreference.pdf|Un sommario completo di comandi bash}} * [[http://www.digilife.be/quickreferences/quickrefs.htm|Un sito di 'sommari' (quick references)]] su tutto! * Manuali in linea delle funzioni di libreria standard: //man nomefunzione man -k argomento// * Altre informazioni in linea (bash, make tec.) //ESC-X info// da emacs. ===== Esame ===== Trovate [[fisica:informatica:201415:esame| qua ]] le regole d'esame ed i **testi delle precedenti prove scritte**. Questa invece e' la pagina degli [[fisica:informatica:201415:assegnamenti| assegnamenti ]]. ===== Comments ===== Per tutto il resto mandate una email a [[susanna.pelagatti@unipi.it|Susanna Pelagatti]].