Corso di programmazione Java Base
Il corso Java Basic offre l'opportunità di imparare uno dei linguaggi di alto livello più
diffusi nel mondo della programmazione: Java SE nella sua versione più recente.
Non richiede conoscenze pregresse 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