- Object-Oriented Programming
- Professor(s)
- Topics covered
- Assessment
- Module specification
- Past exams
- Syllabus
- Resources
- IDE warning
This module will provide you with an object-oriented programming skillset. You'll learn what objects and classes are and how to write classes. You'll see how objects can interact with each other, including defining and implementing interfaces to control the interaction. You'll learn how to use inheritance to extend functionality from parent classes. You'll learn how to write code according to style guidelines and how to write formal code documentation.
- Dr. Matthew Yee-King
- Variable and types
- Control flow: conditionals and iteration
- Functions
- Objects and classes
- Interaction between objects
- Inheritance: extending a parent class
- Inheritance: defining a class hierarchy
- Code documentation and style
- Abstraction and polymorphism: implementing an abstract class
- Abstraction and polymorphism: defining an interface
Coursework only (Type II)
- ⭐ Sourcetrail (Windows, macOS, Linux) - "Free and open-source cross-platform source explorer". Supports C, C++, Java and Python.
Refer Linux setup guide
- Binary Data Representation - Prof. Harry H. Porter III, Ph.D., Portland State University.
- Software Design Principles - Principles Wiki.
- C++ - Playlist by The Cherno
The programme's director said that "you cannot do the work in the second half of the course in Windows with VSCode, so people would need to install Visual Studio eventually anyway."