Advanced Programming - COM00142M
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
Module will run
Occurrence | Teaching period |
---|---|
A | Online Teaching Period 6 2022-23 |
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
-
Demonstrate critical understanding of the theory and application of advanced programming techniques
-
Design and implement programs for real world problems
-
Communicate design decisions for the selection, storage and manipulation of data
-
Critically evaluate the legal and ethical impact of software developments within real world contexts
Module content
-
Data types, data collections, decision and control Structures
-
Event driven programming
-
Multithreaded programming
-
Data storage and processing
-
Statistics, plotting and visualization
-
Regression, clustering
-
Legal and ethical issues
Indicative assessment
Task | % of module mark |
---|---|
Essay/coursework | 100 |
Special assessment rules
None
Indicative reassessment
Task | % of module mark |
---|---|
Essay/coursework | 100 |
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.