Fondamenti di informatica - Dipartimento di Informatica e Automazione

Fondamenti di informatica
un approccio a oggetti con Java
Luca Cabibbo
Introduzione al corso di
Fondamenti di informatica I e II
(informatici)
Anno Accademico 2001-2002
18 febbraio 2002
1
Introduzione
Fondamenti di informatica
Fondamenti di informatica I (informatici)
Docente:
con la collaborazione di:
Luca Cabibbo
Maurizio Pizzonia
Primo modulo (5CFU)
n CFU = Credito formativo Universitario
n 1 CFU = 25 ore di impegno per lo studente “medio”
n nel terzo periodo, dal 18 febbraio al 27 marzo 2002
n dal lunedì al venerdì, dalle 9:45 alle 11:15, aula N1
Ricevimento studenti: giovedì dalle 14:00 alle 16:00, presso
n Dipartimento di Informatica e Automazione
Via della Vasca Navale 79 — secondo piano, stanza 211
2
Introduzione
Fondamenti di informatica
Fondamenti di informatica II (informatici)
Docente:
con la collaborazione di:
Luca Cabibbo
Maurizio Pizzonia
Secondo modulo (5CFU)
n nel quarto periodo, dal 29 aprile al 7 giugno 2002
n dal lunedì al venerdì, dalle 11:30 alle 13:00, presso l’Oratorio
San Paolo
3
Introduzione
Fondamenti di informatica
Che cosa è l’informatica
Informatica:
n scienza e tecnica dell’elaborazione dei dati e, genericamente,
del trattamento automatico dell’informazione
(Lo Zingarelli, 2001)
L’informatica è una disciplina scientifica
n è la scienza del trattamento dell’informazione
n problemi, informazioni, algoritmi
n livello astratto, concettuale, metodologico, logicomatematico
L’informatica è una disciplina tecnologica
n è la tecnologia dell’elaborazione dei dati
n dati, programmi
n livello concreto, pragmatico, tecnologico, legato al
calcolatore
4
Introduzione
Fondamenti di informatica
Prerequisiti e obiettivi
Prerequisiti
n uso dei calcolatori e delle reti di calcolatori
Obiettivi di questo corso di Fondamenti di informatica
n introdurre alcuni aspetti fondamentali dell’informatica come
disciplina per la soluzione automatica di problemi
n elementi di programmazione
n aspetti metodologici e qualitativi (correttezza, complessità)
n mediante strumenti (sia tecnologici che metodologici e
culturali) efficaci e duraturi per affrontare l’evoluzione
tecnologica in modo flessibile
5
Introduzione
Fondamenti di informatica
Programma del corso — primo modulo
Elementi di programmazione
n introduzione alla programmazione
n introduzione alla programmazione orientata agli oggetti
n problemi e algoritmi
n introduzione al linguaggio di programmazione Java
Metodologie e tecniche di programmazione
n correttezza
6
Introduzione
Fondamenti di informatica
Programma del corso — secondo modulo
Elementi di programmazione
n altri elementi del linguaggio di programmazione Java
n stringhe e array
n definizione di classi
n modello di gestione della memoria
Metodologie e tecniche di programmazione
n ricorsione
n complessità
n alcuni algoritmi notevoli
7
Introduzione
Fondamenti di informatica
Materiale didattico
Fondamenti di informatica: un approccio a oggetti con Java
n a cura di Luca Cabibbo — con la collaborazione di Giuseppe
Di Battista, Giuseppe Liotta e Alfonso Miola
n una bozza di libro (solo capitoli 3–6)
n lucidi delle lezioni (estremamente dettagliati, quasi un libro!)
n una libreria di classi (fiji) utilizzata nel corso e codice
sorgente per tutti gli esempi proposti nel corso
n un sito web (con lucidi in formato PDF)
n http://cabibbo.dia.uniroma3.it/fiji
n http://www.dia.uniroma3.it/~cabibbo/fiji
In distribuzione presso:
n Xero Digital (Viale Marconi 447)
n CD-ROM e copia dei lucidi
n Libreria Galileo Galilei (Via Segre 13-17)
n copia dei lucidi e bozza del libro (capitoli 3–6)
8
Introduzione
Fondamenti di informatica
Materiale didattico
Sito web del corso di Fondamenti di informatica (informatici)
n http://www.dia.uniroma3.it/~java/fdi
CD-ROM
n Fondamenti di informatica: un approccio a oggetti con Java
n software e documentazione per la programmazione in Java
n in distribuzione presso: Xero Digital
9
Introduzione
Fondamenti di informatica
Materiale didattico supplementare
Libri — non indispensabili, ma utili per la consultazione
n tecnologia dell’informazione e della comunicazione
n Curtin e altri. Informatica di base. McGraw-Hill, 1999
n Sciuto e altri. Introduzione ai sistemi informatici.
McGraw-Hill, 1997
n Autori vari. Guida alla patente europea del computer.
Apogeo, 2000
n elementi di programmazione
n Mizzaro. Introduzione alla programmazione con il
linguaggio Java. Franco Angeli, 1999
n Horstmann. Concetti di informatica e fondamenti di Java
2. Apogeo, 2000
n Arnow e Weiss. Introduzione alla programmazione Java.
Un approccio Object-Oriented. Jackson Libri, 1999
10
Introduzione
Fondamenti di informatica
Laboratorio
Durante il corso, gli studenti hanno accesso ai calcolatori del
Laboratorio Informatico
n ADiSu, sala Luigi Arata, Via della Vasca Navale 79, piano terra
n l’accesso al laboratorio è consentiti negli orari di apertura
affissi presso il laboratorio stesso
n l’utilizzo del laboratorio è consentito solo nel rispetto del
regolamento del laboratorio stesso
n http://www2.dia.uniroma3.it/Laboratori/labArata.htm
È inoltre disponibile un servizio di tutorato presso il Laboratorio
Informatico
n attualmente, con il seguente orario
n lunedì, martedì e giovedì, dalle 14:00 alle 15:30
Gli studenti che hanno a disposizione un calcolatore e un
collegamento a Internet possono svolgere le “attività di
laboratorio” in proprio
11
Introduzione
Fondamenti di informatica
Modalità d’esame
L’esame, per ciascun modulo, prevede lo svolgimento di due
prove
n una prova scritta
n domande relative alla parte
tecnologica/teorica/metodologica del programma del
corso
n viene verificato il “sapere” e la capacità di “comunicare il
sapere”
n una prova pratica
n presso il Laboratorio Informatico
n allo studente viene richiesto di dimostrare la conoscenza
del linguaggio di programmazione Java e delle tecniche di
programmazione
n viene verificato il “saper fare” e la capacità di “comunicare il
saper fare”
12
Introduzione
Fondamenti di informatica
Prove di (auto)valutazione
Durante lo svolgimento del corso saranno proposti
periodicamente, sul sito web del corso, alcuni esercizi di autovalutazione che gli studenti potranno svolgere in maniera
autonoma, consegnando le proprie soluzioni entro qualche giorno
n le prove di (auto)valutazione permettono di prepararsi alle
prove pratiche degli esami del corso, in quanto sia le modalità
di svolgimento che i contenuti sono analoghi a quelli di tali
prove pratiche
n in aula saranno discusse le soluzioni degli esercizi, insieme ad
alcune soluzioni proposte dagli studenti (presentate in forma
anonima)
Lo svolgimento delle prove di (auto)valutazione influenza la
valutazione finale delle prove di profitto nella misura massima di
3 punti su 30
13
Introduzione
Fondamenti di informatica
Esperienze passate
Negli anni precedenti, relativamente al corso di Fondamenti di
informatica 1 del vecchio ordinamento, gli studenti che hanno
superato l’esame sono stati circa il 75% dei frequentanti, con una
votazione media di circa 25 trentesimi
Gli studenti che hanno sostenuto l’esame non avendo svolto
prove intermedie sono stati circa il 10% dei frequentanti
14
Introduzione
Fondamenti di informatica
Fondamenti di informatica (elettronici) – AA 2000-2001
Fondamenti di informatica (elettronici) – AA 2000-2001
Distribuzione voti della prima prova intermedia
Distribuzione voti della seconda prova intermedia
50
45
40
35
30
25
20
15
10
5
0
Frequenza
Frequenza
Esperienze passate — Fondamenti di informatica
(elettronici) 2000-2001
Scritto
Pratica
0,0
1,0
2,0
3,0
4,0
5,0
6,0
7,0
8,0
45
40
35
30
25
20
15
10
5
0
Scritto
Pratica
9,0 10,0
0,0
1,0
2,0
3,0
4,0
Voto
5,0
6,0
7,0
8,0
9,0 10,0
Voto
Fondamenti di informatica (elettronici) – AA 2000-2001
Fondamenti di informatica (elettronici) – AA 2000-2001
Distribuzione voti prove intermedie
Distribuzione dei voti verbalizzati
31
30
29
28
27
26
25
24
23
22
21
34
32
30
28
26
24
22
20
18
16
14
12
8
10
6
4
2
0
0
20
5
19
Esonerati
Tutti
10
20
18
16
14
12
10
8
6
4
2
0
17
15
Frequenza
Frequenza
20
18
25
Voto
Voto
15
Introduzione
Fondamenti di informatica
Esperienze passate — 2000-2001
Fondamenti di informatica (elettronici) – AA 2000-2001
Frequenza delle lezioni
Ore di studio individuale
30
Frequenza
25
20
15
10
Voto
440
470
470
410
380
350
320
290
410
380
350
320
290
260
230
200
170
470
440
410
380
350
320
290
260
230
200
170
140
110
80
50
20
Ore di studio
5
140
10
110
15
80
Frequenza
Frequenza
20
20
18
16
14
12
10
8
6
4
2
0
50
Ore di studio complessive
20
Fondamenti di informatica (elettronici) – AA 2000-2001
Ore di studio al calcolatore
Ore di studio
Fondamenti di informatica (elettronici) – AA 2000-2001
25
16
260
Voto
30
0
440
Voto
230
200
170
140
110
80
50
20
470
440
410
380
350
320
290
260
230
200
170
140
110
80
50
0
Ore di studio
5
20
90
80
70
60
50
40
30
20
10
0
Fondamenti di informatica (elettronici) – AA 2000-2001
Ore di studio
Frequenza
Ore di studio dedicate dagli studenti all’esame di Fondamenti di
informatica (dati ricavati da interviste a studenti verbalizzanti)
Voto
Introduzione
Fondamenti di informatica
Calendario delle prove d’esame
Per il primo modulo gli esami sono fissati con il seguente
calendario
n prova scritta: 17 aprile 2002
n prova pratica: 18 e 19 aprile 2002
Per il primo modulo gli esami sono fissati con il seguente
calendario
n nell’interruzione di giugno-luglio 2002
Nel resto dell’anno accademico sono previste le seguenti prove di
appello
n una prova di recupero per il primo modulo nell’interruzione di
giugno-luglio 2002
n prove di recupero per entrambi i moduli a luglio 2002 e a
settembre 2002
17
Introduzione
Fondamenti di informatica