Il Corso Java Basic offre l'opportunità di imparare un linguaggio di alto livello tra quelli più
in voga nel mondo della programmazione, Java SE nella sua ultima versione.
Non richiede conoscenze di base ed è rivolto anche
agli studenti alle prime armi.
Il corso offre tutte le competenze necessarie per programmare in Java, con particolare enfasi sulla gestione di classi,
oggetti e metodi, funzionali alla creazione di applicazioni.
I programmi realizzati saranno dotati di interfacce grafiche al fine di renderli
utilizzabili in modo più intuitivo dagli utenti finali.
I partecipanti saranno guidati nell’utilizzare tecniche evolute quali, la gestione dei database ed il networking.
La prima parte del corso è fondamentale per coloro che non hanno mai avuto esperienza nell’ambito della programmazione e/o nella
progettazione di applicazioni e nell'utilizzo delle basi di dati e fornisce le conoscenze fondamentali per poter poi accedere allo studio del linguaggio vero e proprio.
Saranno trattati i Fondamenti e la Logica della Programmazione, la Progettazione di Database, la Sintassi del Linguaggio SQL.
La seconda parte del corso è incentrata sulla programmazione in Java.
Tra i linguaggi più richiesti dalle aziende, per le sue sue molteplici qualità, la sua portabilità e la totale aderenza ai principi
della Programmazione Orientata agli Oggetti, Java si presta nel contempo ad essere uno strumento ottimale per l'apprendimento della
programmazione e dei suoi concetti.
Al termine del corso, che ha la finalità di formare un programmatore completo, si possiederanno tutte le conoscenze necessarie per poter
realizzare programmi completi e funzionali di media complessità.
PRIMA PARTE
Fondamenti di Programmazione
• Che cos’è la Programmazione Strutturata
• Che cos’è un Algoritmo
• Diagrammi a Blocchi
• Progettazione top‐down e bottom‐up
• Variabili, Costanti e Tipi di Dati
• Le strutture di controllo fondamentali: Sequenza, Selezione, Iterazione
• Operatori Aritmetici e Logici
• Pseudocodifica
• Le Funzioni
Progettazione di Basi di Dati
• Introduzione: dati, basi di dati e DBMS
• Struttura in una base di dati relazionale.
• Progettazione Concettuale
• Progettazione Logica
• Modello Entità‐Relazione
• Concetti di Relazione, Attributo, Tupla, Chiave interna ed esterna
• Normalizzazione
• Vincoli di Integrità
Elementi di Sintassi SQL
• Nozioni fondamentali sul linguaggio SQL
• Dichiarazione SELECT (proposizioni Select e From)
• Proposizione Where
• Operatori di Confronto
• Operatori Logici
• Proposizione ORDER BY
• JOIN e Funzioni di raggruppamento
SECONDA PARTE
Introduzione
• Installazione ambiente di sviluppo
• Introduzione linguaggio Java
• Compilazione ed esecuzione
• Sintassi java
Basi della programmazione
• Tipi di dato primitivi
• Caso particolare: la classe String
• Variabili locali
• Casting
• Operatori di assegnazione, relazionali e booleani
• Operatori aritmetici
• Pre/post incremento e concatenazione stringhe
• Input/Output utente
• Array monodimensionali
• Array multidimensionali
• Istruzione If-Else e operatore ternario
• If annidati
• Istruzione Switch - case
• Ciclo While
• Ciclo Do-While
• Ciclo For
• Cicli annidati
• Cicli infiniti
• Labels, Break e Continue
Metodi
• Il metodo Main ed i sottoprogrammi
• Metodi di classe: La parola chiave Static
• Passaggio dei parametri per riferimento e per valore
• Modificatori
• Gestione e importazione dei package
• Scope delle variabili
Programmazione ad oggetti
• La programmazione ad oggetti
• Progettare una Classe
• Istanziare un Oggetto: il costruttore
• Variabili d’istanza e incapsulamento
• Visibilità dei membri di una classe
• Il reference This
• La parola riservata null
• Membri statici e membri dinamici
Ereditarietà
• Il concetto di ereditarietà
• Strutture ereditarie
• Dalla teoria alla pratica: Ereditarietà
• La parola riservata super
• La classe Object
• Impedire l'ereditarietà: la parola riservata final
Polimorfismo
• Polimorfismo
• Overloading e Overriding
• Binding dinamico
• Casting con oggetti
• Cast e instanceof
Interfacce, classi astratte e classi innestate
• Interfacce
• Interfaccce metodi di default : Definizione ed Uso (Java 8)
• Interfacce metodi static: definizione ed uso (Java 8)
• Ereditarietà e polimorfismo nelle interfacce
• Classi astratte
• Classi innestate
• Classi anonime
Eccezioni
• Errori ed eccezioni
• Il costrutto TRY-CATCH-FINALLY
• Tipi di eccezione ed il costrutto Throws
• Lanciare un’eccezione: il costrutto Throw
• Eccezioni personalizzate
Programmazione grafica
• Interfacce grafiche
• Le interfacce grafiche di Netbeans
• TextField ed etichette
• Pulsanti
• Tabbedpane
A corredo del corso, verrà fornito tutto il materiale didattico necessario.
• Libro di testo / dispense
• Slide
• Esempi
• Tool di sviluppo
• Test di autovalutazione