Fondamenti di Informatica Canale A - L Alfonso Miola Presentazione del Corso Informazioni utili Gennaio 2002 1 Contenuti K Corso di Fondamenti di Informatica K Programma del corso K Materiale didattico K Organizzazione didattica K Attività di laboratorio K Prove di valutazione ed esami 2
Corso di Fondamenti di Informatica Il corso di Fondamenti di Informatica per gli studenti di Ingegneria Informatica è un corso introduttivo all Informatica suddiviso in due moduli di 5 crediti ciascuno Il corso è un introduzione alle metodologie e alle tecnologie per il trattamento automatico dell informazione I concetti vengono veicolati attraverso il linguaggio di programmazione Java 3 Corso di Fondamenti di Informatica... Il corso di Fondamenti di Informatica intende fornire gli elementi di base della cultura informatica attraverso strumenti - metodologici e concettuali - efficaci e duraturi per affrontare in modo flessibile l evoluzione tecnologica e il vasto mondo delle applicazioni. Il corso si configura come corso di base, per il quale non sono previsti specifici prerequisiti, tranne il contenuto del corso di Laboratorio di Informatica. 4
Obiettivi del corso K Introdurre l'informatica come disciplina per la soluzione automatica di problemi. K Presentare i concetti di base della programmazione degli elaboratori elettronici; gli strumenti linguistici, le metodologie e tecniche, in parte formali ed in parte pragmatiche, della programmazione; gli aspetti qualitativi dell efficienza e della correttezza. La programmazione è una disciplina che si fonda su consolidate basi di teoria dei linguaggi e di metodologie di progetto ed analisi di soluzioni algoritmiche di problemi. 5 Programma del primo modulo 1. La programmazione orientata agli oggetti Vengono introdotti formalmente i concetti di problema, algoritmo e programma; i concetti elementari della programmazione orientata agli oggetti - classe, oggetto, metodo - in modo inizialmente astratto e poi con riferimento ad alcune delle classi predefinite di Java; i concetti di variabile, dichiarazione e assegnazione. 2. Le tecniche di programmazione Vengono introdotti i tipi di dato primitivi di Java, le strutture di controllo, e la modalità di definizione di classi. 3. Un approccio disciplinato alla programmazione Vengono introdotti i concetti di correttezza, testing e debugging. 6
Programma del secondo modulo 1. Le tecniche di programmazione Vengono introdotti gli array; le tecniche dell'iterazione e della ricorsione. Vengono illustrate alcune idee metodologiche per la progettazione di classi. 2. Un approccio disciplinato alla programmazione Vengono introdotti i concetti di complessità computazionale, come strumento per la valutazione e il confronto di soluzioni alternative di un problema e alcuni algoritmi classici sugli array - ricerca e ordinamento. 7 Materiale didattico Il sito web del corso e le dispense del corso, a cura di L. Cabibbo, sono disponibili in rete all indirizzo http://www.dia.uniroma3.it/~java/fdi/ Le dispense in forma cartacea e un CD-ROM contenente le dispense e altro materiale software di interesse per l intero corso sono disponibili presso Fotocopie Marconi - Viale Marconi 447 Libreria Galilei - Via Segre 15 (solo le fotocopie) Testo di consultazione S. Mizzaro: alla programmazione con il linguaggio Java, F. Angeli 8
Organizzazione didattica Il corso è articolato in moduli: Modulo 1 - (dal 18/2/2002 al 27/3/2002) Modulo 2 - (dal 29/4/2002 al 7/6/2002) L attività didattica assistita del corso è articolata in: K lezioni ed esercitazioni in aula K sedute di laboratorio con l assistenza di un tutore K assistenza individuale 9 Orario delle lezioni Le lezioni e le esercitazioni in aula si tengono: Primo modulo - III periodo didattico dal Lunedì al Venerdì ore 9.45-11.15 Aula Oratorio S. Paolo Secondo modulo - nel IV periodo dal Lunedì al Venerdì ore 9.45-11.15 Aula N1 Le sedute assistite di laboratorio si tengono tutti i: Lunedì, Martedì e Giovedì ore 14.00-15.30 10
Assistenza individuale Il Prof. Miola (miola@dia.uniroma3.it) riceve gli studenti nel proprio studio (stanza 222) presso il Dipartimento Informatica e Automazione, Via Vasca Navale 79 (edificio ex OMI), II piano, il: Giovedì ore 14.00-15.30 Il Prof. Patrignani (patrigna@dia.uniroma3.it) riceve gli studenti nel proprio studio (stanza 205) presso il Dipartimento Informatica e Automazione, Via Vasca Navale 79 (edificio ex OMI), II piano, il: Martedì ore 14.00-15.30 11 Informazioni Le informazioni relative al corso si possono trovare consultando: K il sito Web del Corso di Studi in Ingegneria Informatica http://www.dia.uniroma3.it/ccsinginf K le bacheche del Corso di Studi in Ingegneria Informatica presso il Dipartimento di Informatica e Automazione, Via Vasca Navale 79 (edificio ex OMI), al piano terra e al II piano 12
Attività di laboratorio Durante il corso, per tutte le attività pratiche al computer, lo studente potrà accedere al Laboratorio Informatico ADiSU - Sala Luigi Arata Via Vasca Navale 79 - piano terra Oltre che negli orari fissati per le sedute assistite di Laboratorio, l accesso libero su prenotazione è consentito negli orari di apertura affissi presso il Laboratorio stesso. L utilizzazione delle apparecchiature del Laboratorio è consentita nel rispetto del regolamento fissato e disponibile al sito http://www2.dia.uniroma3.it/laboratori/regollabarata.html 13 Prove di valutazione ed esami Ai fini del superamento dell esame del corso sono previste: K prove di valutazione intermedia (gestite via Web) K prove d esame 14
Prove di valutazione Durante il periodo di lezioni il docente proporrà periodicamente - sul sito web del corso - alcuni esercizi di valutazione che lo studente svolgerà in maniera autonoma inviando via rete le soluzioni entro una fissata scadenza. Le soluzioni degli esercizi proposti verranno date in aula durante le lezioni. Lo studente potrà comunque verificare eventuali errori commessi durante gli orari di assistenza individuale. Le risposte agli esercizi proposti influenzeranno la valutazione il voto dell esame finale nella misura massima di 3 punti su 30. 15 Organizzazione dello studio individuale Sulla base di quanto detto dovrebbe immediatamente risultare quale è l impegno che si richiede a ciascuno studente nella preparazione all esame di questo corso. L organizzazione didattica complessivamente proposta è volta a favorire la migliore produttività nello studio; tuttavia è da tener presente che i risultati migliori si possono ottenere soltanto con una frequenza e uno studio assiduo e continuativo, data anche la forte interdipendenza dei vari argomenti via via trattati nel corso. 16
Organizzazione dello studio individuale... In tal senso si tenga conto che, secondo le stime e le valutazioni emerse in sede nazionale per gli studi della Facoltà di Ingegneria, il miglior profitto nello studio di una materia si può ottenere dedicando allo studio individuale mediamente 1.5 volte il tempo dedicato alla frequenza delle attività assistite dal docente. 17 Esami L'esame consiste in una prova pratica, una prova scritta, e una prova orale. Nella prova pratica viene richiesto di dimostrare conoscenze della programmazione in Java. Nella prova scritta viene richiesto di rispondere a domande relative alla parte teorica del programma. La prova orale comprende una discussione dell elaborato delle prove pratica e scritta. 18
Esami... Ciascuno dei due moduli previsti avrà un suo proprio esame con verbalizzazione separata L appello d esame del primo modulo è fissato per 17 Aprile 2002 - prova scritta 18 e 19 Aprile 2002 - prova pratica in laboratorio Appelli successivi sono previsti per Luglio e Settembre 2002 19 Esperienza passata Nota bene che: K Negli anni precedenti - vecchio ordinamento - gli studenti che hanno superato l esame, in uno degli appelli previsti nell anno, sono stati circa il 75% dei frequentanti, con una votazione media di circa 25/30 K Gli studenti che hanno superato l esame non avendo svolto alcuna prova intermedia sono stati soltanto il 10% dei frequentanti 20