Il testo, diviso in tre parti che possono anche essere lette separatamente, tratta la programmazione a oggetti e il linguaggio C++, introducendo elementi di base come ADT e classi, ereditarietà, eccezioni, programmazione generica e un’introduzione alla Standard Template Library. La descrizione degli elementi del linguaggio include le novità principali introdotte dal C++11, come gli smart pointer, le espressioni lambda e la semantica move. Sono presentati e discussi principi base per la corretta progettazione object oriented, con particolare riferimento ai 5 principi SOLID. Nella seconda parte del libro si introducono i design pattern, mostrando come implementarli in C++ e analizzando quali principi di progettazione sono in essi seguiti. In particolare sono stati selezionati l’Adapter, l’Observer ed il suo uso nel Model-View-Controller, Factory e Singleton. Infine, nell’ultima parte si presentano buone pratiche di programmazione, dalle linee guida di stile a unit testing, refactoring e versionamento del codice. Il libro è nato dall’esperienza di insegnamento nei corsi “Programmazione” (prime due parti) e “Laboratorio di Programmazione” (terza parte) del corso di laurea in Ingegneria Informatica dell’Università di Firenze, ma è pensato per essere accessibile a chiunque sia interessato a migliorare le proprie conoscenze di programmazione e progettazione object oriented in C++.
MARCO BERTINI ha ricevuto la laurea in Ingegneria Elettronica ed il Dottorato di Ricerca in Ingegneria Informatica e delle Telecomunicazioni nel 1999 e 2004. È Professore Associato di Ingegneria Informatica presso la Scuola di Ingegneria dell’Università di Firenze, dove è docente dei corsi Programmazione e Parallel Computing. È membro del centro di eccellenza nazionale MICC (Media Integration and Communication Center) dell’Università di Firenze. La sua attività di ricerca è sui temi di visione artificiale, multimedia e pattern recognition.