Java Base

Impara le fondamenta della programmazione attraverso lo studio del linguaggio Java. Imparerai i principi fondamentali della programmazione orientata agli oggetti e inizierai a scrivere i tuoi primi semplici ma efficaci programmi.

Settimana 1: Introduzione

I concetti di base, come la definizione di programmi e l’uso di compilatori e interpreti. Successivamente, approfondiremo la storia di Java e le procedure per scrivere, compilare ed eseguire programmi. Passeremo poi agli algoritmi, seguiti dal collaudo e il debugging, per individuare e correggere errori nel software.

Settimana 3: Flussi di Controllo

Inizieremo con le istruzioni if-else, coprendo vari aspetti come le istruzioni if-else semplici, le espressioni booleane, le istruzioni if-else annidate, multiramo, il confronto tra stringhe e l’operatore condizionale. Esamineremo anche il tipo boolean, inclusi variabili, regole di precedenza e input/output di variabili booleane. Infine, affronteremo le istruzioni switch, discutendo enumerazioni, algoritmi, collaudo e debugging.

Settimana 5: I Metodi

Esploreremo la definizione e l’invocazione dei metodi in Java, coprendo metodi void e quelli che restituiscono un valore, variabili locali, blocchi di codice, parametri di tipo primitivo e l’istruzione return. Discuteremo anche l’uso della classe Math e come funziona l’invocazione dei metodi.

Settimana 7: Classi e Oggetti

In questa sezione, esploreremo in dettaglio le classi e gli oggetti in Java. Inizieremo definendo le classi, compresi gli aspetti legati ai file delle classi, la compilazione, gli attributi e i metodi statici. Approfondiremo l’incapsulamento, metodi get e set, variabili di tipo classe e metodi booleani. Successivamente, esamineremo i costruttori, variabili e metodi statici, il concetto di overloading e la gestione di array nelle definizioni di classe. Discuteremo anche le enumerazioni come classi e i package (cartelle), inclusi gli import e la gestione dei nomi di package. Infine, ci concentreremo sull’information hiding, compresi i possibili rischi legati alla privacy leak.

Settimana 9: Polimorfismo

Affronteremo il polimorfismo in Java, comprendendo il binding dinamico, l’uso di toString e il modificatore final. Esploreremo anche situazioni in cui il binding dinamico non viene applicato, come il downcast e l’upcast. Successivamente, tratteremo le classi astratte, includendo i concetti di base, la classificazione delle classi astratte come tipi, e ulteriori dettagli su di esse. Infine, esamineremo le interfacce, sia le interfacce di classi che le interfacce Java. Discuteremo come implementare e estendere un’interfaccia.

Settimana 11: Eccezioni

Affronteremo i concetti di base sulla gestione delle eccezioni in Java. Vedremo cosa sono le eccezioni, le classi di eccezioni predefinite e come definire nuove classi di eccezioni. Approfondiremo le dichiarazioni di eccezioni, i tipi di eccezioni, gli errori e come gestire throw e catch multipli. Discuteremo anche l’utilizzo del blocco finally e come rilanciare un’eccezione.

Settimana 2: Nozioni di Base

Si affronteranno le variabili e le espressioni, coprendo argomenti come tipi di dati, assegnamenti, operatori, costanti e conversioni di tipo. Successivamente, analizzeremo la classe String, imparando a manipolare e elaborare stringhe. Infine, affronteremo le operazioni di input/output, inclusi l’output su schermo, l’input da tastiera e la formattazione dell’output con printf.

Settimana 4: I Cicli

Esploreremo i cicli in Java, tra cui while, do-while e for, insieme alle tecniche di dichiarazione di variabili e l’uso della virgola nelle istruzioni for. Successivamente, affronteremo la programmazione con cicli, comprendendo il corpo, le istruzioni di inizializzazione e il controllo delle iterazioni. Discuteremo anche le istruzioni break, continue e come gestire situazioni di cicli difettosi.

Settimana 6: Gli Array

I concetti di base, tra cui creazione, accesso, dettagli, lunghezza e inizializzazione degli array. Discuteremo l’uso di cicli for e for-each sugli array. Successivamente, esamineremo come utilizzare gli array nei metodi, inclusi argomenti di indicizzazione e metodi che restituiscono array. Parleremo di ordinamento e ricerca negli array, come il selection sort. Infine, affronteremo gli array multidimensionali e come usarli come parametri o valori restituiti nei metodi.

Settimana 8: Ereditarietà

Esploreremo l’ereditarietà in Java, compresi i concetti fondamentali come classi derivate, overriding dei metodi, modifiche nei tipi di ritorno e nei modificatori di accesso. Discuteremo la differenza tra overriding e overloading e come rappresentare l’ereditarietà nei diagrammi UML. Successivamente, affronteremo l’incapsulamento nell’ereditarietà, inclusi attributi privati e modalità di accesso protetto. Vedremo come programmare con l’ereditarietà, comprendendo costruttori nelle classi derivate, invocazione di metodi ridefiniti e definizione del metodo equals. Esamineremo la compatibilità di tipo, la classe Object e forniremo differnti implementazioni del metodo equals.

Settimana 10: ArrayList

Esploreremo le strutture dati basate su array, focalizzandoci sulla classe ArrayList. Vedremo come creare un’istanza di ArrayList e come utilizzare i suoi metodi. Scriveremo programmi per effettuare operazioni (inserimento, modifica, cancellazione) sugli oggetti dell’ArrayList.

Settimana 12: Collections e Mappe

Esploreremo le collections, comprendendo l’uso di wildcard, la libreria delle collections e le differenze tra classi concrete come ArrayList e Vector. Successivamente, tratteremo le mappe, inclusi esempi di classi concrete. Esamineremo anche il concetto di iteratori, l’interfaccia Iterator e come utilizzare iteratori di lista.

Settimana 1: Introduzione

I concetti di base, come la definizione di programmi e l’uso di compilatori e interpreti. Successivamente, approfondiremo la storia di Java e le procedure per scrivere, compilare ed eseguire programmi. Passeremo poi agli algoritmi, seguiti dal collaudo e il debugging, per individuare e correggere errori nel software.

Settimana 2: Nozioni di Base

Si affronteranno le variabili e le espressioni, coprendo argomenti come tipi di dati, assegnamenti, operatori, costanti e conversioni di tipo. Successivamente, analizzeremo la classe String, imparando a manipolare e elaborare stringhe. Infine, affronteremo le operazioni di input/output, inclusi l’output su schermo, l’input da tastiera e la formattazione dell’output con printf.

Settimana 3: Flussi di Controllo

Inizieremo con le istruzioni if-else, coprendo vari aspetti come le istruzioni if-else semplici, le espressioni booleane, le istruzioni if-else annidate, multiramo, il confronto tra stringhe e l’operatore condizionale. Esamineremo anche il tipo boolean, inclusi variabili, regole di precedenza e input/output di variabili booleane. Infine, affronteremo le istruzioni switch, discutendo enumerazioni, algoritmi, collaudo e debugging.

Settimana 4: I Cicli

Esploreremo i cicli in Java, tra cui while, do-while e for, insieme alle tecniche di dichiarazione di variabili e l’uso della virgola nelle istruzioni for. Successivamente, affronteremo la programmazione con cicli, comprendendo il corpo, le istruzioni di inizializzazione e il controllo delle iterazioni. Discuteremo anche le istruzioni break, continue e come gestire situazioni di cicli difettosi.

Settimana 5: I Metodi

Esploreremo la definizione e l’invocazione dei metodi in Java, coprendo metodi void e quelli che restituiscono un valore, variabili locali, blocchi di codice, parametri di tipo primitivo e l’istruzione return. Discuteremo anche l’uso della classe Math e come funziona l’invocazione dei metodi.

Settimana 6: Gli Array

I concetti di base, tra cui creazione, accesso, dettagli, lunghezza e inizializzazione degli array. Discuteremo l’uso di cicli for e for-each sugli array. Successivamente, esamineremo come utilizzare gli array nei metodi, inclusi argomenti di indicizzazione e metodi che restituiscono array. Parleremo di ordinamento e ricerca negli array, come il selection sort. Infine, affronteremo gli array multidimensionali e come usarli come parametri o valori restituiti nei metodi.

Settimana 7: Classi e Oggetti

In questa sezione, esploreremo in dettaglio le classi e gli oggetti in Java. Inizieremo definendo le classi, compresi gli aspetti legati ai file delle classi, la compilazione, gli attributi e i metodi statici. Approfondiremo l’incapsulamento, metodi get e set, variabili di tipo classe e metodi booleani. Successivamente, esamineremo i costruttori, variabili e metodi statici, il concetto di overloading e la gestione di array nelle definizioni di classe. Discuteremo anche le enumerazioni come classi e i package (cartelle), inclusi gli import e la gestione dei nomi di package. Infine, ci concentreremo sull’information hiding, compresi i possibili rischi legati alla privacy leak.

Settimana 8: Ereditarietà

Esploreremo l’ereditarietà in Java, compresi i concetti fondamentali come classi derivate, overriding dei metodi, modifiche nei tipi di ritorno e nei modificatori di accesso. Discuteremo la differenza tra overriding e overloading e come rappresentare l’ereditarietà nei diagrammi UML. Successivamente, affronteremo l’incapsulamento nell’ereditarietà, inclusi attributi privati e modalità di accesso protetto. Vedremo come programmare con l’ereditarietà, comprendendo costruttori nelle classi derivate, invocazione di metodi ridefiniti e definizione del metodo equals. Esamineremo la compatibilità di tipo, la classe Object e forniremo differnti implementazioni del metodo equals.

Settimana 9: Polimorfismo

Affronteremo il polimorfismo in Java, comprendendo il binding dinamico, l’uso di toString e il modificatore final. Esploreremo anche situazioni in cui il binding dinamico non viene applicato, come il downcast e l’upcast. Successivamente, tratteremo le classi astratte, includendo i concetti di base, la classificazione delle classi astratte come tipi, e ulteriori dettagli su di esse. Infine, esamineremo le interfacce, sia le interfacce di classi che le interfacce Java. Discuteremo come implementare e estendere un’interfaccia.

Settimana 10: ArrayList

Esploreremo le strutture dati basate su array, focalizzandoci sulla classe ArrayList. Vedremo come creare un’istanza di ArrayList e come utilizzare i suoi metodi. Scriveremo programmi per effettuare operazioni (inserimento, modifica, cancellazione) sugli oggetti dell’ArrayList.

Settimana 11: Eccezioni

Affronteremo i concetti di base sulla gestione delle eccezioni in Java. Vedremo cosa sono le eccezioni, le classi di eccezioni predefinite e come definire nuove classi di eccezioni. Approfondiremo le dichiarazioni di eccezioni, i tipi di eccezioni, gli errori e come gestire throw e catch multipli. Discuteremo anche l’utilizzo del blocco finally e come rilanciare un’eccezione.

Settimana 12: Collections e Mappe

Esploreremo le collections, comprendendo l’uso di wildcard, la libreria delle collections e le differenze tra classi concrete come ArrayList e Vector. Successivamente, tratteremo le mappe, inclusi esempi di classi concrete. Esamineremo anche il concetto di iteratori, l’interfaccia Iterator e come utilizzare iteratori di lista.

Sei ancora indeciso?

Guarda le lezioni GRATUITE!