Anno di corso: 1

Crediti: 8
Crediti: 8
Crediti: 8
Crediti: 3
Tipo: Lingua/Prova Finale
Crediti: 3
Tipo: Lingua/Prova Finale
Crediti: 3
Tipo: Lingua/Prova Finale
Crediti: 3
Tipo: Lingua/Prova Finale

Anno di corso: 2

Anno di corso: 3

Crediti: 8
Crediti: 8
Crediti: 16
Tipo: A scelta dello studente
Crediti: 4
Tipo: Lingua/Prova Finale
Crediti: 13
Tipo: Altro

PROGRAMMAZIONE 1

Scheda dell'insegnamento

Anno accademico di regolamento: 
2014/2015
Anno di corso: 
1
Anno accademico di erogazione: 
2014/2015
Tipo di attività: 
Obbligatorio
Crediti: 
8
Ciclo: 
Primo Semestre
Ore di attivita' didattica: 
68
Prerequisiti: 

Le conoscenze di tipo matematico e logico acquisite nella scuola superiore.

Moduli

Metodi di valutazione

Modalita' di verifica dell'apprendimento: 

La verifica dell'apprendimento comprende una prova scritta e una eventuale discussione del risultato.
La verifica dell'apprendimento può inoltre derivare dall'esito di prove intermedie parziali.

Valutazione: 
Voto Finale

Obiettivi formativi

Acquisire le basi della programmazione imperativa in Java.

Contenuti

L’insegnamento presenterà i concetti alla base dei linguaggi di programmazione ad alto livello focalizzandosi sul paradigma imperativo. Questi concetti verranno spiegati utilizzando il linguaggio Java e saranno fatti sperimentare agli studenti con l’implementazione di semplici algoritmi mirati.

Programma esteso

Struttura logica di un elaboratore e codifica dell'informazione. Gerarchia dei linguaggi di programmazione, compilatori e interpreti. Cenni informali sulla correttezza dei programmi (sintassi, semantica). La Java Virtual Machine. Algoritmi e programmi

Tipi di dati primitivi. Variabili, dichiarazioni e assegnamenti. Espressioni e valutazione. Type checking.

Stringhe. Input/Output da tastiera/su schermo (classe Scanner)

"Strutture di controllo: sequenza, selezione, iterazione
Array di tipi primitivi"

"Metodi di classe, definizione ed invocazione. Parametri di tipo primitivo. Uso della dot notation. Record di attivazione.
Variabili di classe e costanti"

"Classi e istanze come strutture dati (à la struct C) con attributi di tipo primitivo e complesso
Il concetto di reference: cenni alla gestione della memoria in Java (heap, stack e loro uso durante l’esecuzione dei programmi)
Array di reference
Metodi di classe con tipi di dati complessi: definizione e invocazione. Passaggio di parametri by reference e by value"

Bibliografia consigliata

Programmazione di base e avanzata con Java - Walter Savitch , Edizione in Italiano, 2014, Pearson Education Italia, ISBN-10: 8865181907

Metodi didattici

L’insegnamento è composto da lezioni frontali, esercitazioni in aula e sessioni di lavoro assistito in laboratorio. Inoltre, verranno resi disponibile on-line sia le slide e gli esercizi svolti in classe che vari tipi di esercizi mirati (quiz, domande pratiche) da svolgere individualmente da parte degli studenti.