Object orientated programming

Object-orientated programming may not be familiar to students, but offers a different approach to handling complex data structures and crafting methods efficiently. They need to understand the fundamentals of objects and classes, how inheritance works and how data and methods are encapsulated. They will encounter more advanced techniques such as polymorphism, and will design OOP code from first principles using unified modelling language (UML)