ID:
5194
Durata (ore):
72
CFU:
9
Url:
INFORMATICA/TECNOLOGIE INFORMATICHE Anno: 2
Anno:
2023
Dati Generali
Periodo di attività
Secondo Semestre (26/02/2024 - 31/05/2024)
Syllabus
Obiettivi Formativi
Conoscenza e comprensione dei concetti della programmazione ad Oggetti con approfondimenti sulla Programmazione in Linguaggio Java. Il corso è orientato a fornire solide basi in merito alla programmazione dei calcolatori elettronici per risoluzione di problemi con il linguaggio Java.
Acquisizione di competenze specifiche sui principi della programmazione dei calcolatori, dei linguaggi imperativi e basati sulla logica, dei principi della programmazione object-oriented (OOP) e delle conoscenze di base del compilatore, interprete e macchina virtuale Java.
Sviluppo delle capacità di utilizzo degli strumenti linguistici di base del linguaggio Java (istruzioni e tipi).
Acquisizione dell’abilità di progettare la risoluzione di problemi mediante un approccio algoritmico OO e di verificare la correttezza di un programma Java per la risoluzione di un problema dato.
Acquisizione di abilità nella risoluzione di problemi, in particolare attraverso lo sviluppo di algoritmi e nella collaborazione in piccoli gruppi.
Acquisizione di autonomia nella ricerca di librerie utili alla risoluzione di homework, anche su siti internazionali (e quindi solitamente in lingua inglese).
Acquisizione di competenze specifiche sui principi della programmazione dei calcolatori, dei linguaggi imperativi e basati sulla logica, dei principi della programmazione object-oriented (OOP) e delle conoscenze di base del compilatore, interprete e macchina virtuale Java.
Sviluppo delle capacità di utilizzo degli strumenti linguistici di base del linguaggio Java (istruzioni e tipi).
Acquisizione dell’abilità di progettare la risoluzione di problemi mediante un approccio algoritmico OO e di verificare la correttezza di un programma Java per la risoluzione di un problema dato.
Acquisizione di abilità nella risoluzione di problemi, in particolare attraverso lo sviluppo di algoritmi e nella collaborazione in piccoli gruppi.
Acquisizione di autonomia nella ricerca di librerie utili alla risoluzione di homework, anche su siti internazionali (e quindi solitamente in lingua inglese).
Prerequisiti
Conoscenza dei concetti base della programmazione, la programmazione strutturata ed i costrutti e le strutture dati principali.
Metodi didattici
Il corso, al fine di raggiungere gli obiettivi formativi previsti, si svolge prevalentemente
attraverso lezioni frontali. Sono inoltre previste esercitazioni in aula ed esercitazioni
guidate svolte dagli studenti con lo scopo di stimolare l’approccio ai problemi con
autonomia e senso critico.
Tutte le attività sono svolte con supporto di lavagna digitale (tablet) e computer per la
parte di programmazione.
attraverso lezioni frontali. Sono inoltre previste esercitazioni in aula ed esercitazioni
guidate svolte dagli studenti con lo scopo di stimolare l’approccio ai problemi con
autonomia e senso critico.
Tutte le attività sono svolte con supporto di lavagna digitale (tablet) e computer per la
parte di programmazione.
Verifica Apprendimento
L'esame consiste nella presentazione di un progetto ed una prova orale. Il progetto da elaborare viene concordato con il docente e consiste nella scelta di un problema e nella successiva applicazione di alcune delle tecniche apprese durante il corso per la risoluzione del problema. Durante la presentazione del progetto saranno chiesti eventuali approfondimenti sugli argomenti trattati durante il corso (definizioni, esempi rilevanti, applicazioni, collegamenti tra i vari argomenti.) con il duplice scopo di verificare il livello di conoscenza e di comprensione dei contenuti del corso e di valutare l'autonomia di giudizio, la capacità di apprendimento, l'abilità comunicativa e la proprietà di linguaggio scientifico e indi valutare le facoltà logico-deduttive acquisite dallo studente.
La valutazione massima del progetto è 25. Per la prova orale il voto massimo è 10. La valutazione è fatta in trentesimi, gli studenti che superano il 30 riceveranno la lode.
La valutazione massima del progetto è 25. Per la prova orale il voto massimo è 10. La valutazione è fatta in trentesimi, gli studenti che superano il 30 riceveranno la lode.
Testi
Programmazione di base e avanzata con JAVA
W. Savitch
W. Savitch
Contenuti
paradigmi di programmazione ad oggetti
differenza tra classe ed oggetti
information hiding
Classi, variabili e metodi
ereditarietà e polimorfismo
implementazione di interfacce ed estensioni di classi
classi astratte
differenza classe astratta interfaccia
I packages
Operatori
Parole chiave
Differenza public private e protected
Controllo del flusso
Overloading e overriding
I costruttori di classe
Istanziazione delle variabili di classe e variabili di istanza
costanti
classi statiche
Polimorfismo e programmazione dinamica
I thread e la Java Virtual Machine
La programmazione concorrente in Java
Creazione e terminazione di un thread
L’interfaccia Runnable
Identificazione del thread
La sincronizzazione dei thread
Comunicazione fra thread
I/O
File
Classi Reader e Writer
Java e Networking
client/server (socket e datagram socket)
REST (spring)
serializable
JDBC
interfacce grafiche
java e XML (SAX, DOM)
java e db no sql
differenza tra classe ed oggetti
information hiding
Classi, variabili e metodi
ereditarietà e polimorfismo
implementazione di interfacce ed estensioni di classi
classi astratte
differenza classe astratta interfaccia
I packages
Operatori
Parole chiave
Differenza public private e protected
Controllo del flusso
Overloading e overriding
I costruttori di classe
Istanziazione delle variabili di classe e variabili di istanza
costanti
classi statiche
Polimorfismo e programmazione dinamica
I thread e la Java Virtual Machine
La programmazione concorrente in Java
Creazione e terminazione di un thread
L’interfaccia Runnable
Identificazione del thread
La sincronizzazione dei thread
Comunicazione fra thread
I/O
File
Classi Reader e Writer
Java e Networking
client/server (socket e datagram socket)
REST (spring)
serializable
JDBC
interfacce grafiche
java e XML (SAX, DOM)
java e db no sql
Lingua Insegnamento
ITALIANO
Corsi
Corsi
INFORMATICA
Laurea
3 anni
No Results Found
Persone
Persone
Ricercatrice/tore a tempo det.
No Results Found