Corsi I edizione
ELEMENTI DI PROGRAMMAZIONE AVANZATA (C++)
- Docente Responsabile: Francesco Cafagna
- Ente di Appartenenza: INFN
- Qualifica: Esperto Esterno
- SSD: INF 01
- N° Crediti:
- Programma in Italiano:
- Dai linguaggi di programmazione procedurali a quelli orientati ad oggetti.
- Un linguaggio di programmazione ad oggetti: il C++
- La "grammatica di base" del C++:
- I tipi di base
- Le espressioni e gli "statements"
- Le funzioni
- I puntatori e le "reference"
- Funzionalita' avanzate:
- I tipi aggregati: Structures e Union
- Function overloading
- Namespaces
- Templates
- Le classi:
- Introduzione e generalita'
- Membri delle classi: creatori, distruttori, metodi ed "helper functions"
- Controllo di accesso ai dati: public, private.
- Operatori e "overloading"
- Esempi ed esercizi
- Funzionalita' avanzata delle classi:
- Classi derivate
- Ereditarieta' e polimorfismo
- Esempi ed esercizi
- Standard Template Library: STL e cenni di programmazione Object Oriented:
- Introduzione e generalita'
- Panoramica degli oggetti della STL: string, containers, functionals and algorithms
- Esempi di "structural pattern" piu' usati
- Applicazioni alla analisi dei dati:
- Framework di analisi dati nella comunita' HEP: ROOT
- I testi consigliati:
- B. Stroustrup, The C++ programming language (Third edition), Addison ñ Wesley
- B. Stroustrup, Programming -- Principles and Practice Using C++, Addison -Wesley ISBN 978 0321543721. December 2008.
- S. Oualline, Practical C++ Programming (Second Edition ), O'Reilly
- S. Meyer, Effective C++ Third Edition, Addison- Wesley ISBN-13: 978-0321334879
- D. Vandevoorde & N.M. Josuttis, C++ Templates ñ The complete Guide, Addison-Wesley ISBN-13: 978-020173484