Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pcafrica/advanced_programming_2024-2025
Material for the "Advanced Programming" course, Academic Year 2024-2025. Joint course offered by SISSA and UniTS.
https://github.com/pcafrica/advanced_programming_2024-2025
Last synced: about 2 months ago
JSON representation
Material for the "Advanced Programming" course, Academic Year 2024-2025. Joint course offered by SISSA and UniTS.
- Host: GitHub
- URL: https://github.com/pcafrica/advanced_programming_2024-2025
- Owner: pcafrica
- Created: 2024-08-30T07:41:15.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-11-18T13:48:19.000Z (about 2 months ago)
- Last Synced: 2024-11-18T13:55:37.833Z (about 2 months ago)
- Language: C++
- Homepage: https://pcafrica.github.io/advanced_programming_2024-2025/
- Size: 2.36 MB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Advanced Programming: course material
[![md-to-pages](https://github.com/pcafrica/advanced_programming_2024-2025/actions/workflows/md-to-pages.yml/badge.svg)](https://github.com/pcafrica/advanced_programming_2024-2025/actions/workflows/md-to-pages.yml)
This repository contains material for the *Advanced Programming* course. Academic Year 2024-2025.
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][cc-by-nc-sa-shield]][cc-by-nc-sa]
Unless otherwise specified, all content here is licensed under a
[Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License][cc-by-nc-sa].[![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa]
[cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/
[cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png
[cc-by-nc-sa-shield]: https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg---
# :warning: Exam rules
:warning: Detailed exam rules are available [here](exam_rules.md).
---
# Documents
- [Syllabus](syllabus.md).
- [Homework assignment rules](homework_rules.md).
- [Exam rules](exam_rules.md).# Links and resources
- [Course material](https://pcafrica.github.io/advanced_programming_2024-2025/).
- [Google Classroom](https://classroom.google.com/c/NzExNzIzMTkxMTI5?cjc=n6fosq6).
- [Live streaming (Zoom)](https://sissa-it.zoom.us/j/89255126282?pwd=LyTWBBewq8bhkX2IH2lj1npewyK0S5.1).
- [Recordings](https://moodle2.units.it/course/section.php?id=146753).---
# Homeworks
- Homework 01 [[Markdown](homeworks/homework_01.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/homeworks/homework_01.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/homeworks/homework_01.pdf)] [[Google Classroom](https://classroom.google.com/c/NzExNzIzMTkxMTI5/a/NzIzNjQ1MjY5NjYx/details)]
- Homework 02 [[Markdown](homeworks/homework_02.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/homeworks/homework_02.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/homeworks/homework_02.pdf)] [[Google Classroom](https://classroom.google.com/c/NzExNzIzMTkxMTI5/a/NzMyMDk4Njc5NjU5/details)]---
# Timetable
| Date | Time | Room | Topic |
|-----------------|---------------|---------|-------|
| Mon 30 Sep 2024 | 13:00 - 15:00 | 005 | Introduction to the course. The UNIX shell. The build process. [[Markdown](lectures/01/01-intro_unix.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/01/01-intro_unix.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/01/01-intro_unix.pdf)] |
| Tue 01 Oct 2024 | 14:00 - 16:00 | 005 | Exercise session. [[Markdown](exercises/01/01-intro_unix.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/01/01-intro_unix.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/01/01-intro_unix.pdf)] |
| Mon 07 Oct 2024 | 13:00 - 15:00 | 005 | Introduction to C++. Built-in data types. Variables, pointers and references. Control structures. Functions. [[Markdown](lectures/02/02-c++_intro.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/02/02-c++_intro.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/02/02-c++_intro.pdf)] |
| Tue 08 Oct 2024 | 14:00 - 16:00 | 005 | Exercise session. [[Markdown](exercises/02/02-c++_intro.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/02/02-c++_intro.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/02/02-c++_intro.pdf)] |
| Mon 14 Oct 2024 | 13:00 - 15:00 | 005 | Object oriented programming. Classes and access control in C++. Operators. [[Markdown](lectures/03/03-c++_classes.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/03/03-c++_classes.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/03/03-c++_classes.pdf)] |
| Mon 15 Oct 2024 | 14:00 - 16:00 | 005 | Exercise session. [[Markdown](exercises/03/03-c++_classes.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/03/03-c++_classes.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/03/03-c++_classes.pdf)] |
| Mon 21 Oct 2024 | 13:00 - 15:00 | 128-129 | Inheritance and polymorphism in C++. [[Markdown](lectures/04/04-c++_inheritance_polymorphism.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/04/04-c++_inheritance_polymorphism.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/04/04-c++_inheritance_polymorphism.pdf)] |
| Tue 22 Oct 2024 | 14:00 - 16:00 | 128-129 | Exercise session. [[Markdown](exercises/04/04-c++_inheritance_polymorphism.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/04/04-c++_inheritance_polymorphism.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/04/04-c++_inheritance_polymorphism.pdf)] |
| Mon 28 Oct 2024 | 13:00 - 15:00 | 005 | Functions. Templates and generic programming in C++. [[Markdown](lectures/05/05-c++_functions_templates.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/05/05-c++_functions_templates.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/05/05-c++_functions_templates.pdf)] |
| Tue 29 Oct 2024 | 14:00 - 16:00 | 128-129 | Exercise session. [[Markdown](exercises/05/05-c++_functions_templates.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/05/05-c++_functions_templates.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/05/05-c++_functions_templates.pdf)] |
| Mon 04 Nov 2024 | 13:00 - 15:00 | 005 | The Standard Template Library. [[Markdown](lectures/06/06-c++_stl.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/06/06-c++_stl.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/06/06-c++_stl.pdf)] |
| Tue 05 Nov 2024 | 14:00 - 16:00 | 005 | Smart pointers, move semantics, STL utilities. [[Markdown](lectures/07/07-c++_stl2_move.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/07/07-c++_stl2_move.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/07/07-c++_stl2_move.pdf)]
| Mon 11 Nov 2024 | 13:00 - 15:00 | 005 | Exercise session. [[Markdown](exercises/06/06-c++_stl_move.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/06/06-c++_stl_move.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/06/06-c++_stl_move.pdf)] |
| Tue 12 Nov 2024 | 14:00 - 16:00 | 005 | Libraries: principles, building, and use. [[Markdown](lectures/08/08-c++_libraries.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/08/08-c++_libraries.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/08/08-c++_libraries.pdf)] |
| Mon 18 Nov 2024 | 13:00 - 15:00 | 005 | Exercise session: Introduction to GNU Make. [[Markdown](exercises/07/07-c++_make_libraries.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/07/07-c++_make_libraries.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/07/07-c++_make_libraries.pdf)] |
| Tue 19 Nov 2024 | 14:00 - 16:00 | 005 | Exercise session: Introduction to CMake. [[Markdown](exercises/08/08-c++_cmake.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/08/08-c++_cmake.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/08/08-c++_cmake.pdf)] |
| Mon 25 Nov 2024 | 13:00 - 15:00 | 005 | Optimization, debugging, profiling, testing. [[Markdown](lectures/09/09-c++_optimization_debugging_testing.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/09/09-c++_optimization_debugging_testing.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/lectures/09/09-c++_optimization_debugging_testing.pdf)] Exercise session. [[Markdown](exercises/09/09-c++_optimization_debugging_testing.md)] [[HTML](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/09/09-c++_optimization_debugging_testing.html)] [[PDF](https://pcafrica.github.io/advanced_programming_2024-2025/exercises/09/09-c++_optimization_debugging_testing.pdf)] |
| Tue 26 Nov 2024 | 14:00 - 16:00 | 005 | |
| Mon 02 Dec 2024 | 13:00 - 15:00 | 005 | |
| Tue 03 Dec 2024 | 14:00 - 16:00 | 128-129 | |
| Mon 09 Dec 2024 | 13:00 - 15:00 | 005 | |
| Tue 10 Dec 2024 | 14:00 - 16:00 | 128-129 | |
| Mon 16 Dec 2024 | 13:00 - 15:00 | 134 | |
| Tue 17 Dec 2024 | 14:00 - 16:00 | 128-129 | |