Il corso base prende in esame i fondamenti del linguaggio Java e i principi di base relativi alla programmazione delle interfacce utente, la programmazione object oriented, classi, eventi, gestione delle eccezioni, input ed output, fondamenti di networking.
Programma del corso
Introduzione a Java
- Java e la piattaforma di programmazione
- Le parole chiave del linguaggio Java
- Java, internet e breve storia del linguaggio
L'ambiente di programmazione Java
- Java Development Kit
- Ambienti di sviluppo Java
- Strumenti della riga di comando Java
- Creare, compilare ed eseguire programmi Java con un editor di testo
- Ambienti di sviluppo Java integrati
Strutture fondamentali della programmazione Java
- Commenti
- Tipi di dati
- Variabili
- Operatori
- Stringhe
- Input ed Output
- Flusso di controllo
- Numeri Grandi
- Array
Oggetti e classi
- Introduzione alla programmazione orientata agli oggetti
- Classi predefinite in Java
- Classi personalizzate
- Campi e metodi statici
- Parametri dei metodi
- Costruzione degli oggetti
- Pacchetti
- Documentazione JavaDoc
Ereditarietà
- Classi, superclassi e sottoclassi in Java
- Object: la superclasse universale del linguaggio Java
- Liste di array generiche
- Wrapper di oggetti e outboxing
- Classi di enumerazione
Interfacce e classi interne
- Interfacce
- Clonazione di oggetti
- Interfacce e funzioni di callback
- Classi interne
- Classi proxy
Cenni preliminari di programmazione grafica in Java
- Introduzione a Swing
- Frame e pannelli
- Forme 2D
- Utilizzo dei colori, dei font e delle immagini
Gestione degli eventi in Java
- Fondamenti della gestione eventi
- Gerarchia di eventi in AWT
- Eventi low-level
- Azioni
- Multicating
- Sorgenti di eventi, implementazione
Intefaccia utente Swing
- Layout
- Testo in input
- Componenti di selezione
- Menu
- Gestione avanzata del layout
- Finestre di dialogo
Eccezioni e debugging
- Gestione degli errori
- Cattura delle eccezioni
- Logging
- Asserzioni
- Tecniche di debugging
Stream e file
- Stream e famiglie di stream
- Stream di file ZIP
- Stream di oggetti
- Gestione dei file in Java
- New I/O
Elementi base di networking
- Connessione a un server
- Implementazione dei server
- Invio di e-mail
- Costruzione delle connessioni URL
- Programmazione avanzata dei socket