Università degli Studi Guglielmo Marconi

Insegnamento
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.

Obiettivi formativi (espressi come risultati di apprendimento attesi)

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
Prerequisiti

Non sono richiesti requisiti specifici

Contenuti dell'insegnamento

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)
Attività didattiche
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
Tutte le prove di verifica e autoverifica intermedie previste dai Corsi ed erogate in modalità distance learning sono da considerarsi altamente consigliate e utili ai fini della preparazione e dello studio individuali. Le prove di verifica e autoverifica intermedie non sono obbligatorie ai fini del sostenimento della prova d´esame, la quale deve essere svolta in presenza dello studente davanti ad apposita Commissione ai sensi dell´art. 11 c.7 lett.e) del DM 270/2004.
Modalità della prova finale

L´esame si svolge in forma scritta e/o orale.

La prova ha la durata massima di 120 minuti.

Libri di testo

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
Ricevimento studenti

Previo appuntamento (s.forconi@unimarconi.it)