Unit | Credits | Academic sector | Period | Academic staff |
---|---|---|---|---|
Teoria | 8 | INF/01-INFORMATICS | 1° Q - 1° anno, 2° Q |
Maria Paola Bonacina
|
Laboratorio | 4 | INF/01-INFORMATICS | 1° Q - 1° anno, 2° Q |
Nicola Fausto Spoto
|
Modulo: Laboratorio
-------
Chiarire tramite esempi ed esercizi la programmazione in Java. Vengono presentati i meccanismi di analisi di un problema, la sua soluzione tramite algoritmi e la specifica di tali algoritmi nel linguaggio di programmazione Java.
Modulo: Teoria
-------
Obbiettivi formativi: questo corso non assume alcuna esperienza di programmazione da parte dello studente. Il suo obbiettivo centrale è di insegnare gli strumenti necessari a risolvere problemi programmando un calcolatore. Questo comporta lo studio di tecniche per analizzare un problema, costruire un algoritmo e scriverlo in Java. Nel far questo si imparerà una gran parte (ma non tutto) della sintassi e della semantica di Java.
Modulo: Laboratorio
-------
Introduzione alla programmazione e all'informatica usando il linguaggio Java; oggetti e metodi elementari: tipi primitivi, stringhe, I/O interattivo; flusso di controllo: selezione e iterazione; classi e metodi: definizione di classi e metodi, astrazione ed incapsulamento; oggetti e metodi: progetto di metodi, sovraccarico (overloading), costruttori, pachetti (packages); array; ereditarietà (inheritance); polimorfismo e legami dinamici (dynamic binding); definizione e gestione delle eccezioni; strutture di dati dinamiche: vettori e liste; I/O su file: streams; ricorsione; interfacce grafiche (GUI); applets e html (Capitoli 1-14 del libro di Savitch).
Modulo: Teoria
-------
Introduzione alla programmazione e all'informatica usando il linguaggio Java; oggetti e metodi elementari: tipi primitivi, stringhe, I/O interattivo; flusso di controllo: selezione e iterazione; classi e metodi: definizione di classi e metodi, astrazione ed incapsulamento; oggetti e metodi: progetto di metodi, sovraccarico (overloading), costruttori, pachetti (packages); array; ereditarietà (inheritance); polimorfismo e legami dinamici (dynamic binding); definizione e gestione delle eccezioni; strutture di dati dinamiche: vettori e liste; I/O su file: streams; ricorsione; interfacce grafiche (GUI); applets e html (Capitoli 1-14 del libro di Savitch).
Modulo: Laboratorio
-------
L'esame è inserito all'interno dell'esame di programmazione. Si compone di due prove parziali durante il corso:
L1: prova di programmazione al calcolatore sul programma svolto nel I quadrimestre; si svolge in laboratorio alla fine del I quadrimestre;
L2: prova di programmazione al calcolatore sul programma svolto nel II quadrimestre; in particolare la prova utilizza il progetto sviluppato in laboratorio durante il quadrimestre; si svolge in laboratorio alla fine del II quadrimestre.
In alternativa una prova al calcolatore per ogni sessione di esame.
Modulo: Teoria
-------
Esame mediante prove parziali:
durante il corso si svolgono quattro prove:
C1: compito in classe sul programma svolto nel I quadrimestre; si svolge in classe alla fine del I quadrimestre;
L1: prova di programmazione al calcolatore sul programma svolto nel I quadrimestre; si svolge in laboratorio alla fine del I quadrimestre;
C2: compito in classe sul programma svolto nel II quadrimestre; si svolge in classe alla fine del II quadrimestre;
L2: prova di programmazione al calcolatore sul programma svolto nel II quadrimestre; in particolare la prova utilizza il progetto sviluppato in laboratorio durante il quadrimestre; si svolge in laboratorio alla fine del II quadrimestre.
Il voto al primo appello d'esame, che segue la fine del corso, sulla base delle quattro prove, è dato da:
25% C1 + 25% L1 + 25% C2 + 25% L2
e si registra durante la sessione d'esami di marzo-aprile.
Queste prove valgono solo per il primo appello dopo la fine delle lezioni (sessione di marzo-aprile, essendo il corso nel I e II quadrimestre). Dopo questo appello le quattro prove durante il corso non valgono più nulla. Similmente chi sostiene l'esame regolare al primo appello perde il voto maturato con le quattro prove.
Esame regolare:
l'esame regolare verte su tutto il programma del corso, si svolge in laboratorio e si compone di una parte scritta (E) e di una parte da svolgere al calcolatore (L). Il voto è dato da: 50% E + 50% L.
Registrazione: a ogni sessione d'esame ci saranno due date: una per sostenere l'esame regolare e una per registrare il voto. Chi intende registrare il voto maturato con le prove parziali si iscrive solo alla data per registrare (solo al primo appello). Chi si iscrive all'esame regolare, non ha bisogno di iscriversi anche alla data della registrazione.
Regolamento: tutti gli elaborati (C1, C2, L1, L2, E, L) sono individuali; è severamente vietato copiare e scambiare/passare/condividere codice. Tutti gli elaborati che mostrano di essere stati copiati ricevono voto 0, senza distinzione tra chi copia e chi fa copiare.
Author | Title | Publisher | Year | ISBN | Note |
Cay S. Horstmann | Concetti di informatica e fondamenti di JAVA 2 (Edizione 2) | APOGEO | 2002 | 8850320248 | Libro consigliato per esempi ed esercizi oltre a quelli nel libro di testo adottato |
Giovanni Pighizzini e Mauro Ferrari | Dai fondamenti agli oggetti: Corso di programmazione JAVA (Edizione 1) | Pearson Addison Wesley | 2003 | 8871922050 | Libro consigliato per esempi ed esercizi oltre a quelli nel libro di testo adottato |
Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi | How To Design Programs, an introduction to programming and computing (Edizione 1) | The MIT Press | 2001 | 0262062186 | Libro consigliato per introduzione alla programmazione anche non in Java |
David Arnow, Gerald Weiss | Introduction to Programming Using Java: An Object-Oriented Approach: Java 2 Update | Addison Wesley | 2000 | 0201612720 | Libro consigliato per esempi ed esercizi oltre a quelli nel libro di testo adottato |
Stefano Mizzaro | Introduzione alla programmazione con il linguaggio Java (Edizione 2) | Franco Angeli | 2000 | 8846416961 | Libro consigliato per esempi ed esercizi oltre a quelli nel libro di testo adottato |
Walter Savitch | Java: An Introduction to Computer Science and Programming (Edizione 3) | Pearson Prentice Hall | 2004 | 0131013785 | Libro di testo adottato dal corso |
John Lewis e William Loftus | Java: Fondamenti di Progettazione Software (Edizione 1) | Pearson Addison Wesley | 2003 | 8871920929 | Libro consigliato per esempi ed esercizi oltre a quelli nel libro di testo adottato |
John Lewis e William Loftus | Java Software Solutions: Foundations of Program Design (Edizione 3) | Pearson Addison Wesley | 2003 | 0201781298 | Libro consigliato per esempi ed esercizi oltre a quelli nel libro di testo adottato |
Walter Savitch | Java: An Introduction to Computer Science and Programming (Edizione 2) | Prentice Hall | 2001 | 0130316970 | testo consigliato |
******** CSS e script comuni siti DOL - frase 9957 ********p>