Advanced Programming: course material

md-to-pages

This repository contains material for the Advanced Programming course. Academic Year 2025-2026.

This course is offered jointly by SISSA (International School for Advanced Studies) and UniTS (Università degli Studi di Trieste), Trieste, Italy.

License

CC BY-NC-SA 4.0

Unless otherwise specified, all content here is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

CC BY-NC-SA 4.0


⚠️ Exam rules

⚠️ Detailed exam rules are available here and here.


📆 Exam dates

⚠️ Fri 16 Jan 2026, 09:00 (written + computer-based exam). Room 005 @ SISSA.

⚠️ Fri 13 Feb 2026, 09:00 (written + computer-based exam). Room 005 @ SISSA.

ℹ️ Students from UniTS: please register on Esse3.

ℹ️ Students from SISSA: please register by sending me an email.


Documents

Links and resources


Homeworks


Timetable

Date Time Room Topic
Tue 30 Sep 2025 14:00 - 16:00 128-129 Introduction to the course. The UNIX shell. The build process. [Markdown] [HTML] [PDF]
Wed 01 Oct 2025 11:00 - 13:00 005 Exercise session. [Markdown] [HTML] [PDF]
Tue 07 Oct 2025 14:00 - 16:00 005 Introduction to C++. [Markdown] [HTML] [PDF]
Wed 08 Oct 2025 11:00 - 13:00 005 Exercise session. [Markdown] [HTML] [PDF]
Tue 14 Oct 2025 14:00 - 16:00 005 Object oriented programming. Classes and access control in C++. Operators. [Markdown] [HTML] [PDF]
Wed 15 Oct 2025 11:00 - 13:00 005 Exercise session. [Markdown] [HTML] [PDF]
Tue 21 Oct 2025 14:00 - 16:00 005 Inheritance and polymorphism. [Markdown] [HTML] [PDF]
Wed 22 Oct 2025 11:00 - 13:00 005 Exercise session. [Markdown] [HTML] [PDF]
Tue 28 Oct 2025 14:00 - 16:00 005 Functions. Templates and generic programming. [Markdown] [HTML] [PDF]
Wed 29 Oct 2025 11:00 - 13:00 005 Exercise session. [Markdown] [HTML] [PDF]
Tue 04 Nov 2025 14:00 - 16:00 005 The Standard Template Library. [Markdown] [HTML] [PDF]
Wed 05 Nov 2025 11:00 - 13:00 005 Smart pointers, move semantics, exceptions, STL utilities. [Markdown] [HTML] [PDF]
Tue 11 Nov 2025 14:00 - 16:00 005 Exercise session. [Markdown] [HTML] [PDF]
Wed 12 Nov 2025 11:00 - 13:00 005 Libraries: principles, building, and use. [Markdown] [HTML] [PDF]
Tue 18 Nov 2025 14:00 - 16:00 005 Exercise session: Introduction to GNU Make. [Markdown] [HTML] [PDF]
Wed 19 Nov 2025 11:00 - 13:00 005 Exercise session: Introduction to CMake. [Markdown] [HTML] [PDF]
Tue 25 Nov 2025 14:00 - 16:00 128-129 Optimization, debugging, profiling, testing. [Markdown] [HTML] [PDF]
Exercise session. [Markdown] [HTML] [PDF]
Wed 26 Nov 2025 11:00 - 13:00 128-129 Introduction to Python. [Markdown] [HTML] [PDF]
Exercise session. [Markdown] [HTML] [PDF]
Tue 02 Dec 2025 14:00 - 16:00 133 Object-oriented programming in Python. Classes, inheritance and polymorphism. Modules and packages. [Markdown] [HTML] [PDF]
Wed 03 Dec 2025 11:00 - 13:00 004 Exercise session. [Markdown] [HTML] [PDF]
Tue 09 Dec 2025 14:00 - 16:00 005 Integrating C++ and Python codes. [Markdown] [HTML] [PDF]
Wed 10 Dec 2025 11:00 - 13:00 005 Exercise session. [Markdown] [HTML] [PDF]
Tue 16 Dec 2025 14:00 - 16:00 133 Python for scientific computing. [Markdown] [HTML] [PDF]
Wed 17 Dec 2025 11:00 - 13:00 004 Exercise session. [Markdown] [HTML] [PDF]