Duration
25h Th, 20h Pr, 20h Proj.
Number of credits
Lecturer
Language(s) of instruction
English language
Organisation and examination
Teaching in the second semester
Schedule
Units courses prerequisite and corequisite
Prerequisite or corequisite units are presented within each program
Learning unit contents
The course introduces the object-oriented programming paradigm and its main concepts (objects, classes, methods, constructors, messages, instantiation). It then studies in detail the inheritance mechanism and its different applications. The course also covers some auxiliary problems such as object cloning, equivalence testing, and serialization. A brief introduction to object-oriented concurrent programming is also given.
The principles and mechanisms studied in the course are illustrated and applied in practice with the help of the Java programming language.
Learning outcomes of the learning unit
At the end of this course, students will be able to solve a programming problem by following the object-oriented approach, and to implement their solution in the Java programming language.
This course contributes to the learning outcomes I.1, I.2, II.1, II.2, III.1, III.2, III.3, IV.1, V.2, VI.1, VI.2, VII.3, VII.4, VII.5 of the BSc in engineering.
This course contributes to the learning outcomes I.1, I.2, II.1, II.2, III.1, III.2, III.3, IV.1, IV.4, V.2, VI.1, VI.2, VII.3, VII.4, VII.5 of the MSc in electrical engineering.
Prerequisite knowledge and skills
A basic knowledge of algorithmics is needed.
Planned learning activities and teaching methods
- Theoretical lessons.
- Exercise sessions aimed at applying the concepts and mechanisms introduced in the theoretical course to actual problems, introducing programming tools, and helping the students to succeed with their practical project.
- A practical programming project to be made individually or by groups of two students.
Mode of delivery (face to face, distance learning, hybrid learning)
Face-to-face course
Additional information:
- The theoretical lessons are given by the professor.
- Exercise sessions and support for the practical project are given by the assistant and student teaching aids.
Recommended or required readings
A copy of the slides used during the theoretical lessons is available on the WWW page of the course.
Exam(s) in session
Any session
- In-person
written exam ( open-ended questions )
Additional information:
A written exam (open questions) in June. A written exam (open questions) in September.
The grade obtained for the programming project is taken into account, and represents one third of the final note. Projects that have failed in June have to be resubmitted in September. Projects that are sent after the deadline will not be corrected. The penalty for plagiarized projects is a global note of zero for the course.
Work placement(s)
Organisational remarks and main changes to the course
A WWW page with up-to-date information about the course is available at the address https://people.montefiore.uliege.be/boigelot/courses/oop/.
Contacts
Professor: Bernard Boigelot, bernard.boigelot@uliege.be
Teaching assistant: Baptiste Vergain, bvergain@uliege.be