- "Refactoring: Improving the Design of Existing Code ", Martin Fowler et al., Addison-Wesley
- "Test-Driven Development: By Example", Kent Beck, Addison-Wesley
- "Version Control by Example", Eric Sink, disponibile gratuitamente http://ericsink.com/vcbe/vcbe_a4_lo.pdf
Obiettivi Formativi
Apprendimento delle conoscenze di base di tecnologie e pratiche industriali della progettazione e scrittura del software:
- uso dei sistemi di versionamento, con particolare riferimento a GIT
- uso delle pratiche di Unit Testing, con particolare riferimento ai framework per il C++
- uso delle pratiche di refactoring, con particolare riferimento agli strumenti disponibili in IDE moderni.
Prerequisiti
Conoscenza di base della programmazione C/C++
Metodi Didattici
Lezioni in laboratorio e auto-studio
Modalità di verifica apprendimento
Elaborato di programmazione in C++ in cui si mostra l'uso delle tecniche di unit testing, refactoring e versionamento