Skip to content Accessibility statement

Advanced Programming - COM00142M

«Back to module search

  • Department: Computer Science
  • Credit value: 15 credits
  • Credit level: M
  • Academic year of delivery: 2024-25
    • See module specification for other years: 2025-26

Module summary

This module provides students with advanced programming concepts such as file manipulation, event driven programming, multi-threaded programming and the use of packages and documentation.

Related modules

Pre-requisite modules

Module will run

Occurrence Teaching period
A Online Teaching Period 2 2024-25

Module aims

This module aims to build on the concepts of programming from the Algorithms and Data Structure  module and provide students with advanced programming concepts such as file manipulation, event driven programming, multithreaded programming and the use of packages and documentation. The module also explores how to program for big data analysis, and discusses the social context of computing: social impact of computers and the Internet; professionalism, codes of ethics, and responsible conduct; copyrights, intellectual property, and software piracy.

Module learning outcomes

Be able to

  1. Demonstrate critical understanding of the theory and application of advanced programming techniques

  2. Design and implement programs for real world problems

  3. Communicate design decisions for the selection, storage and manipulation of data

  4. Critically evaluate the legal and ethical impact of software developments within real world contexts

Module content

  1. Data types, data collections, decision and control Structures

  2. Event driven programming

  3. Multithreaded programming

  4. Data storage and processing

  5. Statistics, plotting and visualization 

  6. Regression, clustering 

  7. Legal and ethical issues

Indicative assessment

Task % of module mark
Essay/coursework 100.0

Special assessment rules

None

Indicative reassessment

None

Module feedback

Feedback will be provided in line with University policy.

Indicative reading

McKinney, Wes: Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython, 2nd edition, O'Reilly Media 2017.



The information on this page is indicative of the module that is currently on offer. The University constantly explores ways to enhance and improve its degree programmes and therefore reserves the right to make variations to the content and method of delivery of modules, and to discontinue modules, if such action is reasonably considered to be necessary. In some instances it may be appropriate for the University to notify and consult with affected students about module changes in accordance with the University's policy on the Approval of Modifications to Existing Taught Programmes of Study.