You are here

Advanced Programming

Course Type: 
PhD Course
Master Course
Academic Year: 
October - January
48 h

The course aims to provide advanced knowledge of both theoretical and practical programming in C++14 and Python3, particularly the principles of object-oriented programming and best practices of software development.


  • Introduction to C++14. You will learn the logic and the basics of C++14, the built-in data types, and how to use them effectively. Best practices in programming will be addressed.
  • Object orientation in C++14. The principles of Object-Oriented programming will be presented with particular attention to their implementations in C++14. Some of the most important Design Patterns will be discussed.
  • Python3. After a recap of the basics of Python3, you will learn how to program in an object-oriented fashion in the Python3 programming language.
  • Several methods to combine the two languages will be presented.

How to get the material:


  • In-person lectures: University of Trieste, H2bis building, Morin room
  • Remotely: via Microsoft Teams. Please join the team [here]. If you cannot join it, please let me know.


First lecture Monday, October 11, 2021, then each Monday and Friday.

  • Monday 14-16
  • Friday 14-18

Contact me:


  • Programming: Principles and Practice Using C++ (Second Edition), Bjarne Stroustrup, Addison-Wesley 2014, ISBN 978-0-321-99278-9
  • The C++ Programming Language, Bjarne Stroustrup, Addison-Wesley 2013, ISBN 978-0321563842
  • Fluent Python. Clear, concise, and practical programming, Luciano Ramalho, O'Reilly 2015, ISBN 978-1-491-946000-8
Familiarity with linux terminal and a text editor (e.g., emacs, vim)
A bit of knowledge of git
TBC(to be checked)
@UniTS, H2bis, Morin room (2nd floor)
Next Lectures: 

Sign in