martedì 25 marzo 2014

Lezione 25/3/2014: numero variabile di parametri, metodi e campi statici, enumerazioni, autoboxing e autounboxing

Numero variabile di parametri. Array bidimensionali. Vantaggi dei metodi e dell'incapsulamento. Metodi e campi statici: modalità di accesso dall'interno e dall'esterno della classe. Perché il main() è static? Importazione statica di campi e metodi. Enumerazioni. Esempio: SemeCarta e ValoreCarta. Dichiarazione di una enumerazione. Costruttori, campi e metodi di un'enumerazione. I metodi values e valueOf. Enumerazioni e switch. Autoboxing (vedi immagine sotto :-)), auto-unboxing. Classi wrapper e metodi e costanti delle classi wrapper. Confrontare valori di tipi primitivi vs. oggetti vs. valori di enumerazioni.


sabato 22 marzo 2014

Lezione 20/3/2014: esercizi su heap & stack; casi di coding horror

Esercizi su heap & stack. Casistiche di programmazione orripilante: codice illegibile, stampa a video, accessibilità errata dei campi, operatori, ridondanza nel codice o nell'uso di parentesi, uso del tipo appropriato; uso di variabili d'appoggio come campi; variabili locali a un corpo; oggetti senza dignità. Altri esercizi: conversione di base; stampa di istogrammi.

Pubblicato l'esercizio bonus #2!

martedì 18 marzo 2014

Lezione 18/3/2014: riferimenti e oggetti; stack & heap; campi e metodi statici; Scanner; controllo e decisione; array.

Riferimenti e oggetti. Anatomia della memoria: stack e heap. Metodi statici. Lettura dell'input da console: la classe Scanner. Package. Package standard e package di default. La dichiarazione import e la parola chiave package. Strutture di controllo: if, else, il problema dell'else sospeso, else if, operatore di selezione ?, istruzione switch. Esercizi: estrazione del carattere centrale, saluto casuale. Introduzione ai costrutti iterativi: while, do..while, for. Esercizi: calcolare le potenze di 2 fino a 2^N. Array: dichiarazione, inizializzazione, accesso.


giovedì 13 marzo 2014

Lezione 13/3/2014: campi, metodi, costruttori, overloading, accessibilità private e public, String

iniziato la lezione sui concetti fondamentali di programmazione orientata agli oggetti: classi vs. oggetti, campi e metodi (inclusi i costruttori) e politiche di accesso. Esercizi: La classe Contatore. La classe Menu. La classe String. Cenni sui riferimenti.

P.S. Le diapositive aggiornate, insieme agli esercizi d'esonero dell'anno scorso, sono su Google drive!



Lab 12/3/2014: java, javac, Eclipse, esercizi su consapevolezza di tipo e prime classi

Abbiamo parlato della compilazione e l'esecuzione in Java "old style", parlato di java, javac, JDK ed Eclipse (creazione di progetti, creazione di classi, run configuration) e discusso in dettaglio l'importanza della consapevolezza nell'uso dei tipi. Abbiamo parlato di conversioni di tipo, cast espliciti e impliciti. Esercizi: generatore casuale di numeri, Moltiplica, StampaNome, Variabili, Phrase-O-Matic.





martedì 11 marzo 2014

Lezione 11/3/2014: espressioni, classi e oggetti, campi e metodi

Espressioni, operatori aritmetici, operatori di confronto. Un esercizio "collaborativo" per il calcolo di un'espressione in Java. I 3 tipi di conversione di tipo: conversione esplicita, cast esplicito e cast implicito. Concetti fondamentali di programmazione orientata agli oggetti: classi vs. oggetti, campi e metodi

Domani laboratorio! Vedremo parecchi esercizi su espressioni, classi, metodi e campi. Vedremo insieme l'ambiente di sviluppo integrato Eclipse.

venerdì 7 marzo 2014

Lezione 6/3/2014: panoramica e tipi di dato primitivi

Oggi abbiamo completato l'introduzione al corso, fornito una panoramica sugli argomenti principali del corso (oggetti, incapsulamento, ereditarietà, polimorfismo) e parlato di tipi di dato primitivi, variabili, identificatori e letterali. Trovate le diapositive aggiornate sulla cartella google drive condivisa del corso (accessibile tramite il gruppo).



Lezione 5/3/2014: Introduzione al corso

Durante la prima lezione abbiamo parlato del docente, del corso e della sua impostazione. Molti di voi hanno apprezzato l'impronta "ispiratrice" di questa lezione introduttiva. Domani seconda parte dell'introduzione! Le diapositive sono online (accessibili una volta entrati nel gruppo)!

Non dimenticate che uno degli obiettivi di questo blog è permettere la comunicazione tra noi. Per favore, utilizzate i commenti per fornire un utile feedback (alcuni lo hanno fatto "dal vivo" subito dopo la lezione), ma soprattutto il gruppo google del corso.