CODE 84377 ACADEMIC YEAR 2026/2027 CREDITS 6 cfu anno 2 INGEGNERIA BIOMEDICA 11878 (L-8 R) - GENOVA SCIENTIFIC DISCIPLINARY SECTOR INF/01 LANGUAGE Italian TEACHING LOCATION GENOVA SEMESTER 1° Semester PREREQUISITES Propedeuticità in ingresso Per sostenere l'esame di questo insegnamento è necessario aver sostenuto i seguenti esami: Biomedical Engineering 8713 (coorte 2025/2026) FUNDAMENTALS OF COMPUTER SCIENCE 66052 2025 Biomedical Engineering 11878 (coorte 2025/2026) FUNDAMENTALS OF COMPUTER SCIENCE 66052 2025 OVERVIEW Object-oriented programming is a current programming paradigm that allows the efficient development of software modules. These software modules are the basis of multiple applications used in the biomedical field. The reference language is C ++. AIMS AND CONTENT LEARNING OUTCOMES Provide students with the methodologies and tools to design and develop software applications according to efficiency and productivity criteria by using object-oriented programming in C++. Attendance and active participation in the proposed training activities (lectures and exercises) and individual study will enable the student to: know the theoretical and practical tools of object-oriented programming; use classes and objects in the implementation of programs to abstract the algorithms and data structures, which can be useful for a biomedical engineer; develop the skills to operationally apply the concepts learned. AIMS AND LEARNING OUTCOMES Attendance and active participation in the proposed training activities (lectures and exercises) and individual study will enable the student to: - know the theoretical and practical tools of object-oriented programming; - use classes and objects in the implementation of programs by using the paradigms of object oriented programming; - abstract the algorithms and data structures, which can be useful for a biomedical engineer; - develop the skills to operationally apply the concepts learned. PREREQUISITES Procedural programming. TEACHING METHODS Lessons and examples in the classroom. Exercises in C ++ to be carried out by the student during the semester and uploaded to Aulaweb. Students who hold valid certificates relating to Specific Learning Difficulties (SLD), disabilities or other educational needs are invited to contact the lecturer and the school’s disability liaison officer at the start of the course to agree on any teaching arrangements which, whilst respecting the course objectives, take into account individual learning styles. The contact details for the university’s disability liaison officer are available at the following link: https://unige.it/commissioni/comitatoperlinclusionedeglistudenticondisabilita. SYLLABUS/CONTENT Review of procedural C ++ and dynamic allocation Introduction to classes and objects Object-oriented programming and abstract data types Classes and objects; const and static qualifiers; reference; friend Namespace Data structures: node-based linked list and array-based stack Operator overloading Copy constructor and assignment operator (classes with dynamic memory) Inheritance and polymorphism Template Examples to support the lessons Programming labs RECOMMENDED READING/BIBLIOGRAPHY - Notes available on Aulaweb. - H. Schildt. C ++: The Complete Guide. McGraw-Hill TEACHERS AND EXAM BOARD FABIO SOLARI Ricevimento: Appointment by email: fabio.solari@unige.it (since the teacher teaches more than one course, please specify surname and course) LESSONS LESSONS START In accordance with the teaching calendar approved by the Degree Program Board https://easyacademy.unige.it/portalestudenti/index.php?view=easycourse&_lang=it&include=corso Class schedule The timetable for this course is available here: Portale EasyAcademy EXAMS EXAM DESCRIPTION Programming exam. The exam is related to the topics presented during the semester: it consists of quiz and programming exercises that the student must solve and code during the exam. Examples of such exercises were provided during class and practice hours. Possible oral exam. ASSESSMENT METHODS Details on how to prepare for the exam and the degree of depth of each topic will be given during the lessons. The programming exam will verify the actual acquisition of object oriented programming knowledge learned during the semester: at the end of the course the student will have to demonstrate to know how to develop object oriented programs using the characteristics of the C ++ language. FURTHER INFORMATION Students with valid certifications for Specific Learning Disorders (SLD) may request accommodations for exams at least 7 days prior to the exam date by filling out the “accommodation request form” (available via online services at https://modulionline.unige.it/richiesta-adattamenti# no-back), which will be automatically forwarded by the system to the instructor in charge of the course and to the faculty liaison for students with disabilities and SLDs in their School/Department. The student will receive a copy of their request.