Skip to main content Skip to navigation

Programming Languages for Cyber Security

Learn to:
  • Develop small-scale programs that take full advantage of object-oriented, functional, or other approaches
  • Evaluate the relative merits of different paradigms to address cyber security problems


Why is this important?

Programming languages are the medium through which programmers precisely describe concepts, formulate algorithms, and reason about solutions. In the course of your career as a cyber professional you may work with many different languages, separately or together. If developing software, you must understand the programming models underlying different languages and make informed design choices in languages supporting multiple complementary approaches.

You're also likely to need to learn new languages and programming constructs, so you'll need to understand the principles underlying how programming language features are defined, composed, and implemented. The effective use of programming languages, and appreciation of their limitations, also requires a basic knowledge of programming language translation and static program analysis, as well as run-time components such as memory management.


Content

This module will enable you to develop insight into the significant differences between different programming paradigms. Object oriented programming, functional programming, and event driven programming are given special emphasis. You'll develop solutions under these different paradigms to embed the theoretical concepts you're learning into professional practice.

Module content will cover:

  • object-oriented programming
  • functional programming
  • event-driven and reactive programming
  • type systems
  • program representation
  • language translation and execution
  • syntax analysis
  • compiler semantic analysis
  • code generation


Delivery and assessment

10 half-day sessions will be regularly spaced across Year 2. Within each half day session, there will be a mix of lecture, tutorial and practical activity.

Assessment is 70% coursework and 30% exam for this module.

Essential information

Entry Requirements
A level: AAA (STEM subjects preferred)
IB: 36 points (STEM subjects preferred), with a minimum of 4 in English

UCAS Code
H651

Award
Degree of Bachelor of Science (BSc)

Duration
3 years full time (30 weeks per academic year)

Tuition fees
Find out more about fees and funding

How to apply Undergraduate admissions