CS5002: Programming Principles and Practice
This module is offered in 2024-25.
Aims
The aims of this module are:
- To introduce computational thinking and problem solving skills to students with little or no previous programming experience.
- To develop an understanding of the nature of programming.
- To familiarise students with the basics of a commercially relevant programming language.
Learning Outcomes
On successful completion of this module, the student should:
- Be familiar with the concepts of computational thinking and problem solving with software.
- Understand the process of developing small programs.
- Have a working knowledge of a commercially relevant programming language.
- Be aware of at least two different programming paradigms and their applicability.
Syllabus
- Introduction to programming and computational thinking.
- Python basics.
- Programming paradigms.
- Control flow.
- Data structures and types.
- Functions and classes.
- Python modules and libraries.
- Software engineering practices.
Compulsory Elements
This module has no compulsory elements beyond those common to all modules (mark of 4 in each assessment component).
Module Delivery
- Olexandr Konovalov
- Michael Young (support)