Programmazione orientata agli oggetti Docente
Prof.ssa Forconi Sonia Settore Scientifico Disciplinare
ING-INF/05 CFU
6 Descrizione dell'insegnamento
Il corso costituisce un percorso completo che parte dalla basi della programmazione per arrivare agli aspetti più evoluti della programmazione orientata agli oggetti (OOP) utilizzando come riferimento il linguaggio JAVA. Fin dall’inizio lo studente è stimolato a pensare a oggetti mediante lo sviluppo di applicazioni basate sull’uso di classi già esistenti.
Al termine di questo corso, lo studente sarà in grado di:
- Risolvere problemi concreti utilizzando le classi
- “Pensare ad oggetti”
- Progettare delle classi
- Implementare delle classi
- Utilizzare le classi esistenti per risolvere nuovi problemi
- Conoscere la documentazione ufficiale JAVA
Non sono richiesti requisiti specifici
Il corso è così strutturato: Uso degli oggetti, Implementazione delle classi, Argomenti Avanzati.
Ogni lezione tratta un aspetto specifico del linguaggio (ad eccezione delle lezioni suddivise in 2 parti per complessità e/o numerosità degli argomenti da trattare):
- vi sono una serie di argomenti teorici (generalmente suddivisi per tema);
- sono contenuti degli esempi già svolti e una serie di esercizi da svolgere a cura dello studente come approfondimento e familiarizzazione del linguaggio.
Alla fine di ogni parte del corso vi è una lezione in cui vengono svolte le esercitazioni suggerite nelle singole lezioni in modo da fornire un efficace riscontro dell’attività svolta dallo studente.
I principali aspetti trattati dal corso sono:
- Protocolli e contratti
- Basi del linguaggio
- Tipi primitivi e tipi enumerativi
- Array e collezioni
- Uso della gerarchia
- Implementazione delle classi
- Estensione delle classi
- Tipi enumerativi, tipi generici e interfacce
- Organizzazione della memoria e ricorsione
- Eccezioni
- Strutture dati dinamiche
- Gli stream
- JDK 6 “Mustang” : principali package (lang, util, io, awt)
- Decompilatori e dissassemblatori
- Ambienti di sviluppo integrati (IDE)
Didattica Erogativa
L'insegnamento prevede, per ciascun CFU, 5 ore di Didattica Erogativa, costituite da 2,5 videolezioni (tenendo conto delle necessità di riascolto da parte dello studente). Ciascuna videolezione esplicita i propri obiettivi e argomenti, ed è corredata da materiale testuale in pdf.
Didattica Interattiva
L'insegnamento segue quanto previsto dalle Linee Guida di Ateneo sulla Didattica Interattiva e l'interazione didattica, e propone, per ciascun CFU, 1 ora di Didattica Interattiva dedicata alle seguenti attività: lettura area FAQ, partecipazione ad e-tivity strutturata costituita da attività finalizzate alla restituzione di un feedback formativo e interazioni sincrone dedicate a tale restituzione. Criteri di valutazione
L´esame si svolge in forma scritta e/o orale.
La prova ha la durata massima di 120 minuti.
Oltre alle lezioni realizzate dal Docente ed ai materiali didattici pubblicati in piattaforma, è obbligatorio lo studio dei seguenti testi:
- G. Pighizzini, M. Ferrari, Dai fondamenti agli oggetti - Corso di programmazione Java, Pearson Education
Testi di approfondimento:
- R. Sedgewick, Algoritmi in JAVA, Pearson Education
- C. Demetrescu, U. Petrillo, I. Finocchi, G. Italiano, Progetto di algoritmi e strutture dati in Java, McGraw-Hill
Previo appuntamento (s.forconi@unimarconi.it)