Salta al contenuto principale della pagina

ALGORITHMS AND OBJECT ORIENTED PROGRAMMING

CODE 84377
ACADEMIC YEAR 2022/2023
CREDITS
  • 6 cfu during the 2nd year of 8713 INGEGNERIA BIOMEDICA (L-8) - GENOVA
  • SCIENTIFIC DISCIPLINARY SECTOR INF/01
    LANGUAGE Italian
    TEACHING LOCATION
  • GENOVA
  • SEMESTER 1° Semester
    PREREQUISITES
    Prerequisites
    You can take the exam for this unit if you passed the following exam(s):
    • Biomedical Engineering 8713 (coorte 2021/2022)
    • FUNDAMENTALS OF COMPUTER SCIENCE 66052
    TEACHING MATERIALS AULAWEB

    OVERVIEW

    Object-oriented programming is a current programming paradigm that allows the efficient development of software modules. These modules are the basis of multiple applications used in the biomedical field. The reference language is C ++.

    AIMS AND CONTENT

    LEARNING OUTCOMES

    This course aims to 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 ++

    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 (online as a function of the rules ). Exercises in C ++ to be carried out during the semester and uploaded  to  Aulaweb.

    SYLLABUS/CONTENT

    Review of procedural C ++ and dynamic allocation
    Algorithms: search and sorting
    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

    Exam Board

    FABIO SOLARI (President)

    MAURO GIACOMINI

    RAZEEN HUSSAIN

    MANUELA CHESSA (President Substitute)

    LESSONS

    Class schedule

    All class schedules are posted on the EasyAcademy portal.

    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.

    Exam schedule

    Date Time Location Type Notes
    16/01/2023 10:00 GENOVA Scritto G3a e G3B
    08/02/2023 10:00 GENOVA Scritto G3a e G3B
    22/06/2023 10:00 GENOVA Scritto G3a e G3B
    12/07/2023 10:00 GENOVA Scritto G3a e G3B
    31/08/2023 10:00 GENOVA Scritto G3a e G3B