Introduction to Programming - Teoria (2006/2007)

Course Not running, not visible

Course code
4S00016
Name of lecturer
Andrea Masini
Number of ECTS credits allocated
8
Academic sector
INF/01 - INFORMATICS
Language of instruction
Italian
Location
VERONA
Period
1st quadrimester (only for 1st year of 3-year degree courses), 2nd quadrimester

To show the organization of the course that includes this module, follow this link * Course organization

Lesson timetable

Learning outcomes

Il corso fornisce le nozioni di base della programmazione. In
particolare, viene descritto il linguaggio Java e alcune funzioni della libreria Java di uso piu' frequente. Alla fine del corso, lo studente sara' in grado di capire dei semplici programmi scritti in Java e di scriverne di nuovi per risolvere dei semplici problemi.

Attivita' formative.

Il corso si svolge in 64 ore di lezione, distribuite su due trimestri di 32 ore ciascuno. Si assume che lo studente segua al contempo il corso di Laboratorio di Programmazione, in cui avra' modo di applicare e acquisire familiarita' con quanto descritto a lezione.

Syllabus

Prima parte (ottobre-dicembre)

* L'organizzazione del computer e i linguaggi di programmazione.
* Java. La compilazione ed esecuzione dei programmi Java.
* Il primo programma Java. Classi, parole chiave ed identificatori.
* Metodi. print() e println(). Sequenze di escape.
* Costanti e variabili. Operazioni.
* I tipi primitivi.
* Le espressioni. Precedenze. Conversioni di tipo.
* Programmi interattivi.
* Assegnamento.
* Incrementi e decrementi.
* Oggetti di tipo String e relative operazioni.
* Il tipo boolean. Operatori di ordinamento. Short-circuit.
* Le istruzioni if e if/else.
* Costrutti annidati. Indentazione.
* Il costrutto if/else/if.
* Metodo equals su stringhe.
* L'istruzione switch.
* L'istruzione while.
* L'istruzione for. Validita' della variabile indice.
* L'istruzione do/while.
* Cicli annidati.
* File di input.

Seconda parte (gennaio-marzo)

* Array: dichiarazione, creazione e accesso agli elementi.
* Inizializzazione esplicita degli array.
* Elaborazione sugli array: creazione da input, ricerca di una chiave, ricerca del minimo.
* Array come argomenti per metodi: parametri della riga di comando.
* Array multidimensionali.
* Classi, oggetti, costruttori, metodi, campi
* Ereditarieta' e polimorfismo.
* Uso di super nei costruttori.
* Controllo dell'accesso a campi e metodi.
* Uso di super per l'accesso ai campi.
* Classi astratte e interfacce.
* Le eccezioni: dichiarazione, lancio e intercettazione.
* La dichiarazione throws per i metodi.
* Il costrutto finally.
* I metodi ricorsivi: numeri di Fibonacci e quadrati.

Reference books
Author Title Publisher Year ISBN Note
Pighizzini, Ferrari Dai Fondamenti agli Oggetti (Edizione 2) Addison-Wesley 2005 8871922506

Assessment methods and criteria

L'esame consiste nel realizzare o modificare alcuni programmi. Esso e' unificato con l'esame del corso di Laboratorio di
Programmazione. La sua valutazione tiene conto della correttezza dei programmi, ma anche della loro semplicita', chiarezza e compilabilita'.

Ci sono due modi (non esclusivi fra loro) per superare l'esame di Programmazione e Laboratorio di Programmazione:

1) (fortemente consigliato): superando con successo entrambe le prove parziali che si svolgeranno in dicembre e marzo;

2) superando con successo uno dei sei appelli di Programmazione e Laboratorio di Programmazione che si svolgeranno durante l'anno accademico, con date che verranno pubblicizzate. Se si consegna a uno di questi sei appelli, il voto delle prove parziali o quello dell'appello precedente viene automaticamente invalidato.

Share