Università degli studi dell'Insubria

PROGRAMMAZIONE

A.A. di erogazione 2018/2019
Insegnamento obbligatorio

Laurea triennale in INFORMATICA (A.A. 2018/2019)
Anno di corso: 
1
Tipologia di insegnamento: 
Base
Settore disciplinare: 
INFORMATICA (INF/01)
Lingua: 
Italiano
Crediti: 
12
Ciclo: 
Primo Semestre
Ore di attivita' frontale: 
104
Dettaglio ore: 
Lezione (80 ore), Esercitazione (24 ore)

Questo corso fornisce un’introduzione alla programmazione dei calcolatori mediante il linguaggio Java. L'obiettivo primario è quello di fornire agli studenti le conoscenze necessarie alla comprensione e all’utilizzo del linguaggio Java e all’applicazione del linguaggio alla risoluzione di problemi. Il corso affianca quindi all'insegnamento teorico del linguaggio Java e delle sue strutture, esercitazioni e laboratori. Al termine di questo corso lo studente:

conosce i principali elementi che caratterizzano un linguaggio di programmazione (sintassi, semantica, meccanismi implementativi);
conosce le strutture di controllo, le strutture dati di base e le astrazioni principali fornite dal linguaggio Java e in generale dai linguaggi ad oggetti;
applica il linguaggio per la risoluzione di semplici problemi sfruttando le potenzialità di un linguaggio di programmazione ad oggetti.

Conoscenza e capacità di comprensione
Al termine del corso lo studente possiede le conoscenze necessarie per affrontare individualmente lo studio di un linguaggio di programmazione e per comprendere le problematiche relative allo sviluppo e all’applicazione dei linguaggi di programmazione.

Capacità di applicare conoscenza e comprensione.
Al termine del corso lo studente è in grado di applicare il linguaggio di programmazione alla risoluzione di semplici problemi individuando le astrazioni più adatte alla formalizzazione del problema in un linguaggio ad oggetti.

Autonomia di giudizio
Al termine del corso lo studente è in grado di individuare lo schema concettuale di risoluzione di un problema e di utilizzare il linguaggio di programmazione per l’organizzazione della sua soluzione.

Abilità comunicative
Al termine del corso lo studente è in grado di comunicare in modo compiuto e con la corretta terminologia le caratteristiche di un linguaggio di programmazione e la struttura delle applicazioni realizzate.

Prerequisiti: 

Non sono richieste conoscenze informatiche/matematiche specifiche
oltre quelle fornite da una qualsiasi scuola superiore.

L'acquisizione delle diverse conoscenze ed abilità attese si
svilupperà in modo parallelo lungo tutto l'insegnamento, in cui
verranno trattati i seguenti argomenti:

Introduzione ai linguaggi di programmazione: astrazioni, algoritmi, sintassi, semantica e strumenti di sviluppo.
lezioni ore 3;
Introduzione al linguaggio Java. Concetti di base, compilazione, esecuzione, struttura applicazioni.
lezioni ore 3;
Tipi primitivi ed espressioni.
lezioni ore 8; esercitazioni ore 1; laboratorio ore 2;
Strutture di controllo.
lezioni ore 8; esercitazioni ore 1; laboratorio ore 2;
Array.
lezioni ore 4; esercitazioni ore 1; laboratorio ore 2;
Gerarchia dei tipi riferimento, cast e polimorfismo.
lezioni ore 6; esercitazioni ore 1; laboratorio ore 4;
Implementazione delle classi.
lezioni ore 8; esercitazioni ore 1; laboratorio ore 4;
Implementazione dell’ereditarietà.
lezioni ore 8; esercitazioni ore 1; laboratorio ore 2;
Interfacce.
lezioni ore 2; esercitazioni ore 1; laboratorio ore 2;
Variabili, scope e adombramento.
lezioni ore 2; esercitazioni ore 1; laboratorio ore 2;
Early- e late-binding in Java.
lezioni ore 4; esercitazioni ore 1; laboratorio ore 2;
Gestione della memoria: stack e heap. Metodi ricorsivi.
lezioni ore 4; esercitazioni ore 1; laboratorio ore 2;
Eccezioni.
lezioni ore 6; laboratorio ore 2;
Implementazione dei tipi generici.
lezioni ore 4;

Lezioni frontali, 80 ore di lezioni teoriche:
elementi fondamentali di un linguaggio di programmazione;
strutture di controllo, astrazioni, compilazione ed esecuzione del linguaggio Java.

Laboratorio, 24 ore:
apprendimento degli strumenti di sviluppo;
sviluppo guidato di applicazioni.

Modalita' di verifica dell'apprendimento: 

La modalità di verifica consiste in una prova scritta.
Lo scopo di tale prova è quello di verificare l’apprendimento e la comprensione degli elementi caratterizzanti il linguaggio di programmazione oggetto di studio e la capacità dello studente di applicare tali elementi alla risoluzione di semplici problemi. Una prove scritta consiste di:
Esercizi di natura pratica, il cui scopo è quello di verificare le capacità dello studente di rappresentare i metodi di risoluzione di semplici problemi attraverso l'impiego del linguaggio di programmazione utilizzato.
Gli esercizi sono in numero di 6/7.
Domande di natura teorica, il cui scopo è di verificare le capacità comunicative sviluppate dallo studente, in particolare l'acquisizione della terminologia tecnica necessaria alla comprensione e comunicazione delle metodologie e dei modelli relativi al linguaggio di programmazione studiato.
Le domande sono in numero di 2/3.
Il voto della prova scritta è espresso in trentesimi. La prova è superata se il voto è maggiore o uguale a 18/30.

M.Ferrari e G. Pighizzini. Dai Fondamenti agli oggetti, corso di programmazione Java. Quarta edizione, Pearson Addison-Wesley, 2015.
Materiale disponibile sul sito di e-learning:
Esercizi con soluzione. Temi d’esame svolti. Esempi di applicazioni.

ricevimento su appuntamento

Cerchi il programma? Potrebbe non essere ancora stato caricato o riferirsi ad insegnamenti che verranno erogati in futuro.
Seleziona l‘anno in cui ti sei immatricolato e troverai le informazioni relative all'insegnamento del tuo piano di studio.

A.A. 2017/2018

Anno di corso: 1
Curriculum: PERCORSO COMUNE

A.A. 2016/2017

Anno di corso: 1
Curriculum: PERCORSO COMUNE

A.A. 2015/2016

Anno di corso: 1
Curriculum: PERCORSO COMUNE

A.A. 2014/2015

Anno di corso: 1
Curriculum: PERCORSO COMUNE

A.A. 2013/2014

Anno di corso: 1
Curriculum: PERCORSO COMUNE

A.A. 2012/2013

Anno di corso: 1
Curriculum: PERCORSO COMUNE

A.A. 2011/2012

Anno di corso: 1
Curriculum:

A.A. 2010/2011

Anno di corso: 1
Curriculum: