- Academic Registry
Course & Unit Catalogues


CM22012: Advanced programming

[Page last updated: 03 June 2024]

Academic Year: 2024/25
Owning Department/School: Department of Computer Science
Credits: 5 [equivalent to 10 CATS credits]
Notional Study Hours: 100
Level: Intermediate (FHEQ level 5)
Period:
Semester 1
Assessment Summary: EXCB 100%
Assessment Detail:
  • Closed-book written examination (EXCB 100%)
Supplementary Assessment:
Like-for-like reassessment (where allowed by programme regulations)
Requisites: Before taking this module you must take CM12005
Learning Outcomes: After successfully completing this unit, students will be able to:
  • recognise the various styles of programming language
  • understand the differences between them
  • choose an appropriate programming style for the problem in hand
  • debug, profile and benchmark their programs



Synopsis: You will explore the variety of styles of programming languages, recognise and understand the differences between them, and choose an appropriate style for a given problem. You will learn to debug, profile, and benchmark your programs.

Content: Programming paradigms and language families, for example Functional, Procedural, Object Oriented, Logic, Scripting, Declarative, Macro, Unstructured, Event Driven, etc. Examples of languages from each style, with comparisons. Further choices that languages provide, e.g., application based languages; interpreted, bytecoded and compiled; parallel and distributed; OO prototyping, delegation, traits, class centred; managed, unmanaged and garbage collected; static typed, dynamic typed and untyped; call by value, reference, name, need, etc. Debugging, profiling and benchmarking techniques.

Course availability:

CM22012 is Compulsory on the following courses:

Department of Computer Science
  • USCM-AFB30 : BSc(Hons) Computer Science (Year 2)
  • USCM-AKB30 : BSc(Hons) Computer Science with professional placement (Year 2)
  • USCM-AKB30 : BSc(Hons) Computer Science with study abroad (Year 2)
  • USCM-AFM30 : MComp(Hons) Computer Science (Year 2)
  • USCM-AKM30 : MComp(Hons) Computer Science with professional placement (Year 2)
  • USCM-AKM30 : MComp(Hons) Computer Science with study abroad (Year 2)

Notes:

  • This unit catalogue is applicable for the 2024/25 academic year only. Students continuing their studies into 2025/26 and beyond should not assume that this unit will be available in future years in the format displayed here for 2024/25.
  • Courses and units are subject to change in accordance with normal University procedures.
  • Availability of units will be subject to constraints such as staff availability, minimum and maximum group sizes, and timetabling factors as well as a student's ability to meet any pre-requisite rules.
  • Find out more about these and other important University terms and conditions here.