Progetti di programmazione
Ulteriori progetti di programmazione relativi a ciascun capitolo del libroRisposte alle domande di auto-valutazione
Risposte alle domande di auto-valutazioneAppendice F - Linguaggio Java: compendio sintattico
Appendice F - Linguaggio Java: compendio sintatticoCapitolo 15 - Programmazione generica
Le caratteristiche del linguaggio Java che consentono la programmazione genericaAppendice E - Linguaggio Java: linee guida per la codifica
Appendice E - Linguaggio Java: linee guida per la codificaCodice sorgente
Il codice sorgente degli esempi presentati nel testo
Sono disponibili contenuti speciali riservati ai Docenti.
Se sei già registrato come Docente accedi con la tua password
Per richiedere l'accesso Docenti vai alla pagina di registrazione Docenti
Nuova edizione italiana del libro di Cay Horstmann, efficace supporto didattico nei corsi universitari di programmazione e, al tempo stesso, prezioso riferimento per il pubblico professionale.
Anche in questa sesta edizione il testo mantiene le caratteristiche che, da oltre 15 anni, ne hanno decretato il grande successo:
- un approccio graduale alla programmazione, che permette di assimilare anche i concetti più difficili;
- una particolare enfasi sull’attività di problem-solving, della quale vengono resi espliciti i passaggi;
- una straordinaria ricchezza di esempi svolti, domande di verifica, esercizi e problemi.
Il Manuale si divide in 3 parti:
1) I Fondamenti (Capitoli da 1 a 7)
2) Progettazione orientata agli oggetti (Capitoli da 8 a 11)
3) Algoritmi e strutture di dati (Capitoli da 12 a 15)
Presenti nell'ultima parte del libro e disponibili anche online le Appendici e i codici sorgenti.
Il testo è aggiornato alla versione 8 della JDK Standard Edition, pur mantenendo – ove possibile – la compatibilità con le versioni precedenti.
L'autore
Cay Horstmann insegna Computer Science presso il Department of Computer Science della San Jose State University.
Il curatore
L’edizione italiana è a curadi Marcello Dalpasso, docente di Sistemi per l’Elaborazione dell’Informazione presso la Scuola di Ingegneria dell’Università di Padova.
Presentazione della edizione italiana
Prefazione
Capitolo 1 – Introduzione
1.1 Calcolatori e programmi
1.2 L’anatomia di un calcolatore
1.3 Il linguaggio di programmazione Java
1.4 L’ambiente di programmazione Java
1.5 Analisi di un semplice programma
1.6 Errori
1.7 Problem Solving: progettazione di algoritmi
Capitolo 2 – Utilizzare oggetti
2.1 Oggetti e classi
2.2 Variabili
2.3 Invocare metodi
2.4 Costruire oggetti
2.5 Metodi d’accesso e metodi modifi catori
2.6 La documentazione API
2.7 Realizzare un programma di collaudo
2.8 Riferimenti a oggetti
2.9 Applicazioni grafiche
2.10 Ellissi, segmenti, testo e colore
Capitolo 3 – Realizzare classi
3.1 Variabili di esemplare e incapsulamento
3.2 Progettare l’interfaccia pubblica di una classe
3.3 Realizzare la classe
3.4 Collaudo di unità 110
3.5 Problem Solving: tenere traccia dell’esecuzione
3.6 Variabili locali
3.7 Il riferimento this
3.8 Classi per figure complesse
Capitolo 4 – Tipi di dati fondamentali
4.1 Numeri
4.1.1 Tipi di numeri
4.1.2 Costanti
4.2 Aritmetica
4.3 Dati in ingresso e in uscita
4.4 Problem Solving: prima si risolve a mano
4.5 Stringhe
Capitolo 5 – Decisioni
5.1 L’enunciato if
5.2 Confrontare valori
5.3 Alternative multiple
5.4 Diramazioni annidate
5.5 Problem Solving: diagrammi di flusso
5.6 Problem Solving: preparare casi di prova
5.7 Variabili booleane e operatori
5.8 Applicazione: validità dei dati in ingresso
Capitolo 6 – Iterazioni
6.1 Il ciclo while
6.2 Problem Solving: esecuzione manuale
6.3 Il ciclo for
6.4 Il ciclo do
6.5 Applicazione: elaborazione di valori sentinella
6.6 Problem Solving: storyboard
6.7 Algoritmi di uso frequente che utilizzano cicli
6.8 Cicli annidati
6.9 Applicazione: numeri casuali e simulazioni
6.10 Usare un debugger
Capitolo 7 – Array e vettori
7.1 Array
7.2 Il ciclo for esteso
7.3 Algoritmi fondamentali per l’elaborazione di array
7.4 Problem Solving: adattamento di algoritmi
7.5 Problem Solving: progettare algoritmi facendo esperimenti
7.6 Array bidimensionali
7.7 Vettori
7.8 Collaudo regressivo
Capitolo 8 – Progettazione di classi
8.1 Individuare le classi
8.2 Progettare buoni metodi
8.3 Problem Solving: progettare i dati di un oggetto
8.4 Variabili statiche e metodi statici
8.5 Problem Solving: iniziare da un problema più semplice
8.6 Pacchetti
8.7 Ambienti per il collaudo di unità
Capitolo 9 – Ereditarietà
9.1 Gerarchie di ereditarietà
9.2 Realizzare sottoclassi
9.3 Sovrascrivere metodi
9.4 Polimorfismo
9.5 La superclasse universale: Object
Capitolo 10 – Interfacce
10.1 Uso di interfacce per il riutilizzo di algoritmi
10.2 Programmare con le interfacce
10.3 L’interfaccia Comparable
10.4 Usare interfacce di smistamento (callback)
10.5 Classi interne
10.6 Oggetti semplifiati
10.7 Gestione di eventi
10.8 Costruire applicazioni dotate di pulsanti
10.9 Eventi di temporizzazione
10.10 Eventi del mouse
Capitolo 11 – Ingresso/uscita e gestione delle eccezioni
11.1 Leggere e scrivere file di testo
11.2 Acquisire e scrivere testi
11.3 Argomenti sulla riga dei comandi
11.4 Gestire eccezioni
11.5 Applicazione: gestione di errori in ingresso
Capitolo 12 – Ricorsione
12.1 Numeri triangolari
12.2 Metodi ausiliari ricorsivi
12.3 L’effi cienza della ricorsione
12.4 Permutazioni
12.5 Ricorsione mutua
12.6 Backtracking
Capitolo 13 – Ordinamento e ricerca
13.1 Ordinamento per selezione
13.2 Prestazioni dell’ordinamento per selezione
13.3 Analisi delle prestazioni dell’ordinamento per selezione
13.4 Ordinamento per fusione (MergeSort)
13.5 Analisi dell’algoritmo di ordinamento per fusione
13.6 Effettuare ricerche
13.7 Problem Solving: stima del tempo di esecuzione di un algoritmo
13.8 Ordinamento e ricerca nella libreria Java
Capitolo 14 –Java Collections Framework
14.1 Una panoramica del Collections Framework
14.2 Liste concatenate
14.3 Insiemi
14.4 Mappe
14.5 Pile, code e code prioritarie
14.6 Applicazioni di pile e code
Appendice A – Il sottoinsieme Basic Latin di Unicode
Appendice B – Linguaggio Java: operatori
Appendice C – Linguaggio Java: parole riservate
Appendice D – Sistemi di numerazione
Glossario
Indice analitico
In tutti i capitoli
Riepilogo degli obiettivi di apprendimento
Elementi di libreria presentati nel capitolo
Esercizi di riepilogo e approfondimento
Esercizi di programmazione
Solo gli utenti registrati possono scrivere recensioni. Accedi oppure Registrati