This course covers the topics found in the AQA A Level Computer Science syllabus, but is not endorsed by AQA. Please refer to the exam board specification to ensure that the full range of topics has been covered.
Topics included at A Level only (not AS) are indicated by an *.
Additional revision & practice for the 2019 A Level Skeleton code may be found here.
Please note: some A Level content may require you to be logged in with your A Level student account.
Paper 1
Programming concepts
Arithmetic operations in a programming language
Relational operations in a programming language
Boolean operations in a programming language
Constants and variables in a programming language
String-handling operations in a programming language
Random number generation in a programming language
Exception handling
Subroutines: Procedures / Functions
Returning a value/values from a subroutine
Global variables in a programming language
Role of stack frames in subroutine calls
Recursive techniques
Programming paradigms
Procedural-oriented programming
Procedural-oriented programming
Storing Data in Files
Abstract Data Types
Queues
Stacks
Trees
Hash Tables
Dictionaries
Vectors
Graph Traversal (breadth & depth)
Tree Traversal
Following and writing algorithms
Information hiding
Procedural abstraction
Functional abstraction
Data abstraction
Problem abstraction
Composition
Automation
Regular languages
Regular expressions
Context-free languages (BNF)
Classification of algorithms (Big O Notation)
Classification of algorithmic problems
Computable and non-computable problems
Halting problem
Turing machines
Paper 2
Individual (moral) & social (ethical) consequences
Cultural opportunities within computing
Communication methods
Communication basics
Designing Networks & Subnets
The Transmission Control Protocol/Internet Protocol (TCP/IP) protocol
Public and private IP addresses
Thin- versus thick-client computing
Conceptual data models and entity relationship modelling
Database design and normalisation techniques
Structured Query Language (SQL)
Client server databases
Function type
First-class object
Function application
Partial function application
Composition of functions
Writing functional programs
Lists in functional programming