PROGRAMMAZIONE ORIENTATA AGLI OGGETTI - canale 1

Anno accademico 2016/2017 - 2° anno
Docente: Antonella DI STEFANO
Crediti: 6
SSD: ING-INF/05 - Sistemi di elaborazione delle informazioni
Organizzazione didattica: 150 ore d'impegno totale, 100 di studio individuale, 35 di lezione frontale, 15 di esercitazione
Semestre:
ENGLISH VERSION

Obiettivi formativi

Il corso introduce alla programmazione ad oggetti, mostrandone le principali caratteristiche e prendendo come principale linguaggio di riferimento Java.


lo scopo è che l'allievo acquisisca le competenze per poter programmare in Java applicando coerentemente ed efficacemente gli strumenti messi a disposizione dal linguaggio.

Occorre che lo studente conosca i concetti di classe e oggetto e i principi fondamentali di encapsulation, polimorphism, inheritance, exception handling e sia in grado di applicarli nella programmazione java.

verranno anche presentati e valutati concetti di programmazione parametrica e generics, multithreading, socket, GUI e alcuni package fondamentali quali quelli per la gestione dei flussi di IO, Collections, AWT, Swing


Prerequisiti richiesti

Concetti di programmazione strutturata, il linguaggio C per istruzioni e tipi di dati,

Conoscenze delle principali struttura dati statiche e dinamiche. File, liste, pile, code hash table e alberi e i relativi algoritmi classici di manipolazione

Concetti di base di sistema operativo e sw di base (es. variabili ambiente) e comandi di sistema, i concetti di interrupt e ed eccezioni, processi e multithreading, concorrenza, semafori e monitor, socket.


Frequenza lezioni

la frequenza è richiesta solo agli studenti che intendono svolgere prove in itinere


Contenuti del corso

Il corso presenta la programmazione ad oggetti, mostrandone le principali caratteristiche e prendendo come principale linguaggio di riferimento Java.


Vengono trattati i concetti base di classe e oggetto e i principi fondamentali di encapsulation, polimorphism, inheritance, exception handling. questi aspetti vengono applicati alla programmazione java.

Vengono approfonditi i concetti di programmazione parametrica e generics, multithreading, socket, GUI

Vengono applicati anche alcuni package fondamentali quali quelli per la gestione dei flussi di IO, Collections, AWT, Swing


Testi di riferimento

Herbert Schildt "Java. La guida completa "



Programmazione del corso

 *ArgomentiRiferimenti testi
1*Principi di base della programmazione ad oggetti: incapsulamento, ereditatietà e polimorfismo.cap 2 
2 Cenni di UML e regole di progettazione del software 
3 Uso di un IDE per la programmazione Java: es. NetBeans 
4*il linguaggio di programmazione ad oggetti di riferimento: Javacap 3,4,5 
5*Incapsulamento e modificatori di accessocap 6,7 
6*Ereditarietà e polimorfismocap 8 
7*Classi astratte ed interfacce e Packagecap 9 
8*Gestione delle eccezionicap 10 
9 Gestione delle stringheCapitolo 15 (fino a 15.9) 
10 I/O packageCapitolo 13 (fino a 13.10) e capitolo 19 
11*Programmazione parametrica, cap 14 
12 Enumerazioni autoboxingCapitolo 12 (fino a 12.3) 
13 CollectionsCapitolo 17 (fino a 17.5) 
14*Multithreading cap 11 
15*Programmazione ad eventicap 23 
16 Interfacce grafichecap 24, 25 
* Conoscenze minime irrinunciabili per il superamento dell'esame.

N.B. La conoscenza degli argomenti contrassegnati con l'asterisco è condizione necessaria ma non sufficiente per il superamento dell'esame. Rispondere in maniera sufficiente o anche più che sufficiente alle domande su tali argomenti non assicura, pertanto, il superamento dell'esame.

Verifica dell'apprendimento

Modalità di verifica dell'apprendimento

1) una prova pratica al calcolatore:
programma in linguaggio Java)

2) una successiva prova orale, in caso di superamento della prova precedente in base ad una soglia minima di ammissione