|
Insegnamento
FONDAMENTI DI INFORMATICA (Numerosita' canale 1)
IN18103361, A.A. 2018/19
Informazioni valide per gli studenti immatricolati nell'A.A. 2018/19
Dettaglio crediti formativi
Tipologia |
Ambito Disciplinare |
Settore Scientifico-Disciplinare |
Crediti |
ALTRO |
Abilità informatiche e telematiche |
-- |
3.0 |
BASE |
Matematica, informatica e statistica |
INF/01 |
1.0 |
BASE |
Matematica, informatica e statistica |
ING-INF/05 |
5.0 |
Organizzazione dell'insegnamento
Periodo di erogazione |
Primo semestre |
Anno di corso |
I Anno |
Modalità di erogazione |
frontale |
Tipo ore |
Crediti |
Ore di didattica assistita |
Ore Studio Individuale |
LEZIONE |
9.0 |
72 |
153.0 |
Inizio attività didattiche |
01/10/2018 |
Fine attività didattiche |
18/01/2019 |
Commissioni d'esame
Commissione |
Dal |
Al |
Membri |
32 A.A. 2018/2019 (canale 4) |
01/10/2018 |
15/03/2020 |
LUCHETTA
ADRIANO FRANCESCO
(Presidente)
FERRARI
CARLO
(Membro Effettivo)
BAZZANELLA
LAURA
(Supplente)
PIZZI
CINZIA
(Supplente)
|
31 A.A. 2018/2019 (canale 2) |
01/10/2018 |
15/03/2020 |
FERRARI
CARLO
(Presidente)
PIZZI
CINZIA
(Membro Effettivo)
BAZZANELLA
LAURA
(Supplente)
LUCHETTA
ADRIANO FRANCESCO
(Supplente)
|
30 A.A. 2018/2019 (canale 3) |
01/10/2018 |
15/03/2020 |
BAZZANELLA
LAURA
(Presidente)
FERRARI
CARLO
(Membro Effettivo)
LUCHETTA
ADRIANO FRANCESCO
(Supplente)
PIZZI
CINZIA
(Supplente)
|
29 A.A. 2018/2019 (canale 1) |
01/10/2018 |
15/03/2020 |
PIZZI
CINZIA
(Presidente)
FERRARI
CARLO
(Membro Effettivo)
BAZZANELLA
LAURA
(Supplente)
DALPASSO
MARCELLO
(Supplente)
DI CAMILLO
BARBARA
(Supplente)
LUCHETTA
ADRIANO FRANCESCO
(Supplente)
SILVESTRI
FRANCESCO
(Supplente)
VANDIN
FABIO
(Supplente)
|
28 A.A. 2017/2018 |
01/10/2017 |
15/03/2019 |
CANAZZA TARGON
SERGIO
(Presidente)
DALPASSO
MARCELLO
(Membro Effettivo)
BAZZANELLA
LAURA
(Supplente)
FANTOZZI
CARLO
(Supplente)
LUCHETTA
ADRIANO FRANCESCO
(Supplente)
|
27 A.A. 2017/2018 |
01/10/2017 |
15/03/2019 |
BAZZANELLA
LAURA
(Presidente)
DALPASSO
MARCELLO
(Membro Effettivo)
CANAZZA TARGON
SERGIO
(Supplente)
LUCHETTA
ADRIANO FRANCESCO
(Supplente)
|
Prerequisiti:
|
Nessuno |
Conoscenze e abilita' da acquisire:
|
Conoscere: i principi del funzionamento di un elaboratore e della programmazione orientata agli oggetti; gli approcci elementari alla soluzione di problemi (algoritmi) e al progetto di strutture di dati.
Maturare le competenze necessarie per lo sviluppo di semplici applicazioni in linguaggio Java. |
Modalita' di esame:
|
Ogni appello d'esame viene articolato in due prove:
- prova di teoria tramite domande a risposta chiusa;
- prova di programmazione. |
Criteri di valutazione:
|
La valutazione della preparazione dello studente si baserà sulla comprensione degli argomenti svolti e sulla capacità di applicarli in modo autonomo nello sviluppo di una semplice applicazione in linguaggio Java. |
Contenuti:
|
Organizzazione di un elaboratore.
Unità centrale di elaborazione, memoria centrale, dispositivi di memoria di massa, dispositivi di ingresso e uscita.
Il sistema operativo, sommario delle funzioni, processi, multiprogrammazione.
Rappresentazione dell'informazione, sistemi di numerazione e conversioni.
Linguaggi di programmazione.
Esecuzione di un programma tramite compilazione e
interpretazione.
La macchina virtuale Java.
Concetto di algoritmo, introduzione all'analisi degli algoritmi, esemplari di un problema e loro taglie.
Misura della complessità: nel caso peggiore e nel caso medio.
Notazione asintotica O-grande.
Ricorsione, eliminazione della ricorsione.
Strutture di dati e algoritmi, il concetto di tipo di dato astratto, un'interfaccia Java come definizione di un tipo
di dato astratto, realizzazione di un tipo di dato astratto mediante una classe.
Array, liste, pile e code, realizzazione mediante un array o una catena di celle.
Ricerca di un elemento in un array e in una lista.
Ricerca per bisezione in un array ordinato.
Tabelle, dizionari, semplice realizzazione di un dizionario
mediante un array parzialmente riempio o una lista.
Algoritmi di ordinamento, ordinamento per selezione, inserzione, mergesort.
Il linguaggio di programmazione Java.
Tipi di dati elementari e oggetti, riferimenti, operatori ed espressioni, istruzioni di controllo, classi e interfacce.
Campi e metodi di un classe.
Polimorfismo ed ereditarietà.
Gestione elementare degli errori. Introduzione alla
programmazione ad oggetti.
Operazioni di ingresso e uscita dall'ingresso e dall'uscita standard, operazioni di ingresso e uscita da file di testo. |
Attivita' di apprendimento previste e metodologie di insegnamento:
|
Lezioni frontali e laboratorio guidato in aula Taliercio.
Durante il laboratorio verranno proposti esercizi di difficoltà crescente per preparare gli studenti all'obiettivo di saper sviluppare in modo autonomo una applicazione in linguaggio Java. |
Eventuali indicazioni sui materiali di studio:
|
|
Testi di riferimento: |
-
Horstmann, Cay S., Concetti di informatica e fondamenti di Java per Java 7 e Java 8. --: --, 2016.
|
Didattica innovativa: Software o applicazioni utilizzati
- Moodle (files, quiz, workshop, ...)
|
|