Learning outcomes
The objective of this course is to teach students the basic concepts of object-oriented programming. The concepts are illustrated and implemented with the Java language. At the end of this course, the student will be able to structure, specify and implement robust programs using data abstraction and subtyping. Of particular importance is program correction (compliance with specifications, substitution principle, tests...).
Content
The course is primarily motivated by the need for powerful abstraction techniques that facilitate the development and maintenance of large programs. After a brief introduction to the basics of the Java language, the course the abstraction techniques are successively introduced, each being the subject of a chapter: procedural abstraction (reminder), data abstraction, iteration abstraction and type hierarchy abstraction. Additional chapters are dedicated to exceptions, generics and testing. In each chapter, concepts are illustrated and implemented with the Java language. The course is based on the book: “Program Development in Java: Abstraction, Specification and Object-Oriented Design” by Barbara Liskov & John Guttag, Addison-Wesley
Teaching methods
Theoretical course with practical work + flipped classroom for some parts.
Evaluations
Written evaluation
Recommended readings
Program Development in Java: Abstraction, Specification and Object-Oriented Design Barbara Liskov & John Guttag, Addison-Wesley
Language of instruction
French / Français
Location for course
NAMUR
Organizer
Faculté d'informatique
rue Grandgagnage 21
5000 NAMUR
P. 081725252
F. 081724967
secretariat.info@unamur.be
Degree of Reference
Undergraduate Degree