|
Descrizione:
Scopo del corso di C++ è di conferire agli allievi la capacità di maneggiare con sicurezza il complesso linguaggio.
Passando dai suoi fondamenti fino ad arrivare alle tecniche più avanzate si mostrerà come sia possibile utilizzare tutte le caratteristiche del linguaggio per disegnare e realizzare applicazioni efficienti, flessibili, robuste e conformi agli standard industriali (ISO/IEC 9899:1990, ISO/IEC 14882) più rigidi.
Il corso insegnerà a comprendere i costrutti di base del linguaggio C++ e dei linguaggi imperativi in generale (variabili, condizioni, cicli, allocazione di memoria, funzioni e procedure).
Verrà Introdotto ed approfondito il concetto di Classe in C++ e semantica dei modelli ad oggetti in genere.
Saranno analizzate le peculiarità del C++ (overloading, template, ereditarietà multipla, eccezioni, inlining) e loro utilizzo nella costruzione ed implementazione di modelli di applicazioni.
Programma del corso:
1 - Introduzione e motivazioni (cos'é un linguaggio di programmazione) [ore 0,5].
2 - Paradigma imperativo e oggetti (semantica del linguaggio) [ore 0,5].
3 - Introduzione all'ambiente di lavoro (linux, gcc e make, "hello world!") [ore 1].
4 - Breve introduzione storica al C++ [ore 0,5].
5 - Sintassi base e keywords [ore 0,5].
6 - Semantica dei tipi [ore 1].
7 - Il preprocessor [ore 0,5].
8 - Scoping, variabili, strutture dati elementari (sintassi e semantica) [ore 2,5].
9 - Costrutti base: if, case, while, for (sintassi e semantica) [ore 1,5].
10 - Funzioni e procedure (sintassi e semantica) [ore 1,5].
11 - Le Classi (sintassi e semantica) [ore 5].
12 - Metodi e Operatori (sintassi e semantica) [ore 1].
13 - Ereditarietà (sintassi e semantica) [ore 6].
14 - Template [ore 5].
15 - Overload [ore 2].
16 - Esplorazione e combinazione di tecniche avanzate (namespace, classi astratte, polimorfismo, programmazione ortogonale, design pattern, metaprogramming) [ore 4].
17 - Libreria standard e standard template library (iostream, fstream, iterator, containers, alghoritms) [ore 1].
18 - Coding standards [ore 1].
|