Versione del 18-Settembre-2006
Il corso di Fondamenti di informatica 1 canale
"89"
(docente A. Luchetta, e-mail)
è rivolto agli studenti con numero di matricola che termina con le
cifre
8 o 9 iscritti, nell'anno accademico 2005 - 2006, al primo anno
di uno dei
corsi di laurea triennali (nuovo ordinamento) della classe 9 -
Ingegneria
dell'Informazione presenti a Padova (corsi di laurea in Ingegneria
dell'Automazione, Biomedica, Elettronica, Informatica,
dell'Informazione e delle Telecomunicazioni).
Gli studenti iscritti al corso di laurea in Ingegneria Informatica il
cui
numero di matricola ha la penultima cifra pari a "0" costituiscono il
gruppo di ascolto del corso
in teleconferenza e sono tenuti a seguire le lezioni impartite a
Padova dal prof. M. Dalpasso.
Il programma
del corso prevede l'impiego di un sottoinsieme molto limitato di
classi
delle librerie standard di Java (J2SE
5.0).
Durante il corso si fa riferimento al volume: Cay S.
Horstmann,
Concetti di informatica e fondamenti di JAVA, Terza Edizione,
Apogeo (2005), limitatamente alla parti descritte in questo
documento, che costituisce il libro di testo del corso.La casa
editrice mantiene una pagina
web del testo dove si trovano approfondimenti e materiale di
supporto (codice, soluzioni, appendici) che possono essere scaricati
gratuitamente.
Il materiale didattico usato durante il
corso
sara' rese disponibili in formato .pdf durante le lezioni
alla pagina diario delle
lezioni. Non
sostituiscono il libro di testo
e la frequenza alle lezioni e alle esercitazioni in laboratorio.
Il laboratorio si svolge presso l'Aula didattica "Taliercio il
lunedì
dalle ore 8:15 alle ore 12:15 per gli studenti che si sono
immatricolati
nell'anno accademico 2005 -2006. Gli studenti che si sono immatricolati
in
precedenti anni accademici saranno ammessi al laboratorio in funzione
delle postazioni disponibili. Chi non fosse ammesso, per
indisponibilità di posti, potrà utilizzare i turni "di recupero". A
partire dalla terza settimana di corso l'accesso all'aula sarà
liberalizzato e quindi gli studenti potranno accedere a eventuali
postazioni non utilizzate anche nei turni previsti per altri canali del
corso di Fondamenti di informatica 1.
Data |
Argomento |
Esercitazione |
03-Ott-2005 |
Introduzione
al laboratorio e alla programmazione in Java. Lavorare in Linux da riga
di
comando. Il sito dell'aula didattica Taliercio.Il sito della Facolta'
di ingegneria. Il sito del Dipartimento di Ingegneria dellInformazione.
Il sito didattico del docente di Fondamenti di Informatica 1.
Primi
programmi
in java: Vuota.java, Hello.java, HelloJOptionPane.java. Errori
sintattici
e messaggi dal compilatore. Configurazione della posta elettronica
dell'Aula Didattica Taliercio e del Servizio di Ateneo. |
lab
1 |
10-Ott-2005 |
Programmare in Java. Acquisire dati da standard input. Limiti delle rappresentazioni numeriche. Scoprire javadoc | lab2 |
17-Ott-2005 | Questionario
a risposte multiple per autovalutazione. Programmare
in Java: semplici classi. I cicli e le strutture di controllo. |
lab3 |
24-Ott-2005 | Programmare in Java. Ancora strutture di controllo e cicli. Usare gli array. Array riempiti solo in parte. Ridimensionamento dinamico di array. Consultare la documentazione della libreria standard. | lab4 |
4-Nov-2005 (recupero) h 10:30 - 14:30 |
Programmare
in Java. Cicli annidati. Semplici programmi ricorsivi. Array, gestione
delle eccezioni, lettura e
scrittura da/in file, argomenti passati sulla riga di comando. |
lab5 |
07-Nov-2005 | Programmare in Java. Semplici metodi ricorsivi. Ordinamento di numeri. Generazione di successioni di numeri casuali. | lab6 |
14-Nov-2005 | Programmare in Java. Ordinare oggetti di classi che realizzano l'interfaccia Comparable. Programmare strutture dati che realizzano l'interfaccia Stack. Gestire criteri di confronto multipli nel metodo int compareTo(Object obj). | lab7 |
21-Nov-2005 | Programmare in Java. Code. Catene. Iteratori e liste. Dizionari, tabelle e tabelle hash con bucket. | lab8 |
28-Nov-2005 |
Simulazioni
del questionario a risposte multiple e della prova di
programmazione. |
lab9 |
Le prove d'esame si svolgeranno con il seguente
calendario.
Ciascuna prova d'esame si compone di tre parti: un
questionario
a risposte multiple (50 domande, tempo 55-60 minuti circa) e una
prova
pratica di programmazione (2 ore) che si svolgeranno in Aula Taliercio
seguite
da un esame orale (circa 20 minuti) che si svolgerà in un'aula del
Dipartimento
di Ingegneria dell'Informazione; questionario e prova pratica sono
comuni
a tutti gli studenti del settore dell'informazione. Per essere ammessi
alla
prova pratica è necessario ottenere un giudizio positivo nel
questionario,
per essere ammessi all'orale è necessario aver ottenuto un giudizio
positivo
nella prova pratica. La prova pratica viene, di norma, valutata solo se
la soluzione proposta dal candidato compila senza errori. In caso di
insuccesso
ogni candidato può ripetere l'esame a ogni appello ma le tre parti
(questionario,
prova pratica e orale) debbono essere sostenute tutte sempre nello
stesso
appello. Per poter sostenere l'esame è indispensabile iscriversi
nelle
liste predisposte nella bacheca
elettronica
del Dipartimento di Ingegneria dell'informazione.
Prove di programmazione:
- 16.12.2005: testo,
Container.java,
EmptyQueueException.java,
CQueue.java
con lista concatenata, CQueue.java
con array circolare, CMR.java,
TestCMR.java,
numeri.txt
- 11.01.2006: testo,
Container.java,
Dictionary.java,
D.java
con array non ordinato, D.java
con array ordinato, D.java
con tabella hash, Oracolo.java,
iliade.txt
- 18.07.2006: testo,
Container.java,
Dictionary.java,
TourOperator.java,
viaggi.txt
- 04.09.2006: testo,
Stack.java,
EmptyStackException.java,
MyStack.java
con LinkedList,
MyStack.java
con Array,
MyExtendedStack.java,
Main.java,
testo.txt
- 18.09.2006: testo,
StackAndQueue.java,
EmptyStackException.java,
EmptyQueueException.java,
MySQ.java
con DoublyLinkedList,
MySQ.java
con Array,
MyExtendedSQ.java,
Main.java,
testo.txt
Per lo svolgimento degli esercizi di programmazione gli
studenti
possono utilizzare le postazioni dell'Aula Didattica Taliercio oppure
una
stazione
di lavoro costituita da un personal computer dotato del sistema operativo Linux oppure Microsoft Windows (98, ME, NT,
2000
o XP) oppure di un MAC della Apple .
Per programmare in Java in una propria postazione
di lavoro con sistema operativo Linux o Microsoft Windows, sono
indispensabili i seguenti componenti software:
- Java development Kit (JDK5.0)
(dimensione circa 60 MBytes);
- documentazione J2SE
5.0 Documentation (dimensione circa 44 Mbytes).
Prima di installare JDK5.0 consultare le istruzioni di
installazione.
Per programmare in Java in una postazione di lavoro
Apple con sistema operativo Mac OS X 10.4 sono necessari i seguenti
componenti software:
- Java
2
Platform,
Standard Edition (J2SE)
(dimensione circa 34 Mbytes);
- documentazione J2SE 5.0
Documentation (dimensione circa 44 Mbytes).
Un utile tutorial di java e'
disponibile qui.
Se cercate un editor 'free' adatto alla stesura di
programmi in Java da usare in ambiente MS Windows provate conTEXT.
Se cercate un ambiente integrato (IDE, Integrated Development
Environment) 'free' per lo sviluppo di programmi Java, in
Linux, MS Windows e MacOS X provate BlueJ.
Con MS Windows potete provare anche jCreator.