Comments
Transcript
Introduzione al corso - INFN Sezione di Ferrara
Dati utili: Università degli Studi di Ferrara Laurea triennale in Matematica Corso di Programmazione 1. http://www.fe.infn.it/u/filimanto/programmazione Il sito è uno strumento fondamentale: tutte le comunicazioni, nonchè l’eventuale materiale didattico verranno resi disponibili sul sito. Tenetelo sempre d’occhio! Introduzione al corso 2. [email protected] Scrivete liberamente! Filippo Mantovani 28 Settembre 2009 Filippo Mantovani - 28/09/2009 Orario e ricevimento: Libro(i) di testo: Propongo di mantenere l’orario ufficiale assegnato dall’organizzazione didattica del corso: I I –2– Libro 1 Titolo: Il linguaggio C Autori: Brian W. Kernighan, Dennis M. Ritchie Editore: Pearson - Prentice Hall Lunedı̀ dalle 14:00 alle 16:30; Giovedı̀ dalle 11:00 alle 13:30. Piccole variazioni possono essere comunicate a voce o sul sito. Sono disponibile a ricevere gli studenti presso il dipartimento di Matematica al termine di ciascuna lezione del corso. In alternativa, accordandoci per mail, posso ricevere anche in altri giorni, ma al Polo Scientifico Tecnologico: Libro 2 Titolo: C Corso completo di programmazione (3a edizione) Autori: Harvey M. Deitel, Paul J. Deitel Editore: Apogeo Qualsiasi manuale di C può in realtà essere utile/bastare per le nostre esigenze... via Saragat n. 1 - Blocco B, II piano, stanza 216. Filippo Mantovani - 28/09/2009 –3– Filippo Mantovani - 28/09/2009 –4– Programma del corso: no grazie! E quindi, di cosa si parla oggi? Solitamente nella prima lezione si introduce il programma del corso: io non voglio annoiarvi con questo perchè dopo ogni lezione troverete sul sito web il diario di bordo del corso aggiornato con gli argomenti affrontati. IMPORTANTE: Tutto ciò che viene elencato nel diario di bordo può essere argomento di discussione all’esame. Filippo Mantovani - 28/09/2009 –5– I tre macro-argomenti: Vorrei affrontare due argomenti apparentemente sciocchi: 1. Vi risparmio la fatica di andare su Google/Facebook e altre diavolerie a cercare chi è il prof di programmazione. 2. Cerchiamo una risposta alla domanda: ”Perchè mi fanno fare un corso di programmazione se voglio studiare matematica?!? Cosa si imparerà?” Filippo Mantovani - 28/09/2009 –6– Architetture, algoritmi, linguaggi Partiamo dal secondo punto: in questo corso di programmazione vorrei farvi capire che il mondo dell’informatica può essere basicamente suddiviso in tre grandi questioni: Le tre grandi questioni sono strettamente legate tra loro: se conosco un linguaggio con delle regole formali ben definite allora posso esprimere un problema (algoritmi) Questione 1 : le architetture (dei calcolatori, delle reti, ecc.); Questione 2 : gli algoritmi; Questione 3 : i linguaggi di programmazione. Il modo più facile per illustrarvi queste questioni è raccontarvi a livello di favola un po’ delle cose a cui ho lavorato durante i miei studi di dottorato ed al termine di essi... e se conosco le architetture posso usare il linguaggio per adattare al meglio gli algoritmi alle caratteristiche computazionali dell’architettura che ho deciso di usare!!! E cosı̀ rispondiamo anche al primo punto della slide precedente, con buona pace di Facebook & C. Filippo Mantovani - 28/09/2009 –7– Filippo Mantovani - 28/09/2009 –8– Alcuni esempi di problemi: Perchè vi ho raccontato tutto questo? Problemi di fluidodinamica: I Cell; I Nehalem. 1. Perchè cosi abbiamo scoperto che i problemi “concreti”, il loro studio, le architetture e i linguaggi vanno a braccetto. 2. Perchè tutto quello che avete visto è fatto da fisici, informatici e matematici (in rigoroso ordine alfabetico) e quindi è alla vostra portata!!! Curate la vostra formazione fin da ora perchè qui avrete la possibilità, in TUTTI i corsi, di imparare un metodo formidabile per affrontare molti problemi che assillano il brutto mondo là fuori. Spin glass: I I GPU; Janus. Filippo Mantovani - 28/09/2009 –9– Il brutto mondo là fuori... ...È sempre una quesione di punti di vista! Filippo Mantovani - 28/09/2009 – 11 – Filippo Mantovani - 28/09/2009 – 10 –