Computer Programming Ii

A.Y. 2025/2026
6
Max ECTS
48
Overall hours
SSD
INF/01
Language
Italian
Learning objectives
The course aims at introducing students to object-oriented programming.
Expected learning outcomes
At the end of the course, the student shall be able to illustrate the main concepts and techniques of object-oriented programming (abstraction, encapsulation, inheritance, and polymorphism) and, by applying these concepts and techniques, design and implement a C++ program in order to favor maintainability, reuse and extensibility of the code, regardless of the application domain.
Single course

This course cannot be attended as a single course. Please check our list of single courses to find the ones available for enrolment.

Course syllabus and organization

Single session

Responsible
Lesson period
Second semester
Course syllabus
The course deals with the main concepts and techniques of object-oriented programming (abstraction, encapsulation, inheritance, polymorphism) through the use of the C++ language. In particular, the program of course is focused on the following main topics:

*) Introduction to C++
- Variables and basic types
- string/vector
- Expressions and statements
- Functions
*) Object-oriented programming in C++
- Classes
- Copy, assignment, and destroy of objects
- Base classes, derived classes, and virtual functions
- Abstract base classes
- Access control to classes' members and inheritance
- Class scope and inheritance
- Construction, copy, assignment, and destroy of objects of derived classes
- Exception handling
Prerequisites for admission
Having passed the exam of 'Computer Programming' ('Computer Programming I') is a compulsory requirement for this course.
Teaching methods
The entire course is taught by lectures.
Teaching Resources
Reference book:

C++ Primer
di Stanley B. Lippman, Josee Lajoie, Barbara E. Moo
ASIN: 0321714113
Editore: Addison-Wesley Professional; 5° edizione
Lingua: Inglese
ISBN-10: 9780321714114
ISBN-13: 978-0321714114

Additional complementary material prepared by the instructor is made available through the myAriel web site of the course.
Assessment methods and Criteria
The final exam consists of two tests.
The first test is written. It consists of closed/open-ended questions, and of assignments concerning the completion/development of code in C++ for the resolution of simple programming exercises. The test aims at evaluating the knowledge acquired by the candidate, with respect to both the concepts and techniques of object-oriented programming, and the C++ programming language.
The second test consists in the design and implementation of a C++ program, based on pre-established specifications, and in an oral interview in which the candidate will discuss the designed and implemented program. The test aims to evaluate the candidate's ability to apply the knowledge acquired in the design and development of a C++ program.
The second test can only be taken after passing the first.

The final grade is expressed out of thirty and is calculated as a weighted average of the scores obtained in the two tests.
The evaluation takes into account the following criteria: level of knowledge of the topics, ability to apply the acquired knowledge, and capacity for logical and critical reasoning.
INF/01 - INFORMATICS - University credits: 6
Lessons: 48 hours
Professor: Bianchessi Nicola
Professor(s)
Reception:
Thursday, 11:00-13:00 and 14:00-15:00 - By appointment (to be arranged by email)
Room 3021 - Via Celoria, 18