Programming Paradigms

Students will need to understand programming paradigms as they will face different languages throughout their careers. The module will start by giving them a historical perspective and then go on to discuss each paradigm’s strengths, weaknesses, and differences.
Through the module, students will understand the programming languages’ underlying principles and their various features. Students will be exposed to the following paradigms: Imperative, Object-Oriented, Functional (using Python/Java), and Parallel/Concurrent. The focus of the course will be on the Object-Oriented paradigm.
The ultimate aim of this module is to strengthen students’ understanding of object-oriented programming and provide a more comprehensive understanding of various paradigms. This will enable them to develop larger and more complex software projects.