Object Oriented Programming (32 h)

Undergraduate course, IG2I, Centrale Lille Institut, 2025

As part of a larger course on Object-Oriented Programming (OOP), I teach a 32-hour module dedicated to exploring the fundamentals and practical applications of programming with Java. My sessions cover the key concepts of OOP—such as classes, attributes, methods, encapsulation, inheritance, and polymorphism—while also addressing essential data structures and algorithmic reasoning. A strong emphasis is placed on writing clean, well-documented, and maintainable code, following Java conventions and best practices.