Advanced programming
Course objectives
General Objectives: The course aims at providing the students with the ability to understand and design programs that require a deep knowledge of their execution model, specifically, of the organization and management of the memory. To this end, the course adopts the Von Neumann architecture as a reference model and the procedural C/C++ language as the programming tool. The use of the programming language will be focused on memory management techniques (stack, heap), realization of data structures (arrays, matrices, linked lists, stacks, queues, trees, graphs), recursive programming techniques, and implementation of algorithms on such data structures. The course has a strong bias towards program design and implementation and thus, includes practicals at the laboratory, developed on a Linux platform. Specific Objectives: Knowledge and understanding: Providing a wide overview of the analysis and design of programs in languages requiring a deep knowledge of the execution model, and in particular of the memory management mechanisms. The tackled problems are formally defined and both the theoretical and practical bases for their solution are provided. Applying knowledge and understanding: Solving specific programming problems, through a proper application of the studied techniques. Lab activity will allow the students to apply the acquired knowledge. Making judgements: Being able to assess the correctness of a program and its adequacy wrt to the requirements. Communication skills: Ability to describe the decisions made when solving problems and explain the execution mechanisms of programs under the adopted model. Learning skills: Self-study of some topics introduced during the course, through the solution at home of exercises proposed during lab activity.
Program - Frequency - Exams
Course program
Prerequisites
Books
Teaching mode
Frequency
Exam mode
Bibliography
Lesson mode
- Lesson code10606848
- Academic year2024/2025
- CourseComputer and System Engineering
- CurriculumAutomatica
- Year1st year
- Semester2nd semester
- SSDING-INF/05
- CFU9
- Subject areaMatematica, informatica e statistica