- -3,00 €
Algoritmi, Struttura dati e oggetti
DESCRIZIONE
Il linguaggio C++ è ormai universalmente utilizzato per lo sviluppo di applicazioni industriali di grandi dimensioni e alte prestazioni; esso eredita dal C l’efficienza prestazionale, mentre quella dimensionale la deriva dal paradigma dell’Object Oriented Programming (OOP), la cui inclusione nel C, a opera di Bjarne Stroustrup, sancì appunto la nascita del C++ nei primi anni ’80.
Questo volume introduce ai principi della programmazione scegliendo come linguaggio didattico proprio il C++, nonostante non lo si possa certamente definire tale. Il motivo che ci spinge in questa direzione è il desiderio di ridurre i tempi di formazione del programmatore, facendolo applicare, fin dai primi algoritmi, su un linguaggio professionale realmente utilizzato in grandi suite software. Questa scuola di pensiero ha mostrato recentemente un’interessante evoluzione. Proprio l’esplosione dell’OOP come paradigma computazionale per grandi sistemi software (soprattutto veicolata dal linguaggio Java, attuale principe dell’OOP) sta portando i grandi formatori internazionali a ripensare i percorsi didattici preferendo in alcuni casi la via del thinking as objects, anticipando cioè i temi dell’OOP rispetto a quelli della tradizionale programmazione strutturata.
Questa impostazione filologica classica è la principale caratteristica del testo di Aguilar: prima vengono presentati i concetti introdotti dai linguaggi di programmazione ad alto livello (come il Pascal), e poi quelli caratterizzanti i linguaggi OOP per lo sviluppo distribuito di grandi sistemi software da parte di molti programmatori (come il Java), il tutto utilizzando però un unico linguaggio che assembla entrambe le caratteristiche, come appunto l’ANSI/ISO C++.
INDICE
Parte I - Fondamenti di programmazione
1) Introduzione all’informatica e alla programmazione
2) Il linguaggio C++. Elementi base
3) Operatori ed espressioni
4) La programmazione strutturata
5) Funzioni
6) Array
7) Strutture e unioni
8) Puntatori e riferimenti
9) Allocazione dinamica della memoria
10) Stringhe
11) Ordinamento e ricerca
Parte II - Programmazione orientata agli oggetti
12) Classi e oggetti
13) Classi derivate: eredità e polimorfismo
14) Template
Parte III - Strutture dati
15) Flussi e file: libreria standard di I/O
16) Liste
17) Pile e code
18) Ricorsione
19) Alberi
Parte IV - Programmazione avanzata in C++
20) Sovraccaricamento degli operatori
21) Eccezioni
Appendice A - Esercizi supplementari
Indice analitico
Scheda tecnica