Obiettivo di questo corso è fornire competenze teoriche e pratiche di programmazione orientata agli oggetti e presentare alcune tecniche avanzate di programmazione, utilizzando come linguaggio di riferimento il linguaggio C++.
I contenuti riguardano quindi principalmente la programmazione orientata agli oggetti (classi, oggetti, ereditarietà, polimorfismo, le altre relazioni tra classi), la memoria dinamica, lo sviluppo di alcuni contenitori quali pile e code, la gestione delle eccezioni.
Non ci riferiremo ad una particolare versione dello standard del C++, gli esempi che verranno sviluppati nel corso non necessitano di particolari caratterestiche del linguaggio, tra quelle introdotte negli standard 2011 e 2014 (lo standard 2017 al tempo di realizzazione del corso non è ancora disponibile). Eventuali elementi specifici degli ultimi standard verranno opportunamente segnalati quando utilizzati.
Per sviluppare gli esempi e gli esercizi presentati durante il corso è possibile utilizzare un qualsiasi compilatore C++ (Standard). Si segnalano: l'ambiente di sviluppo DevC++ (GNU General Public License) per Windows, Xcode per Mac OS X, il compilatore GNU C++ su Linux, l'ambiente C++ per piattaforma Eclipse.
- Docente: Valeria Vittorini