# Home Teaching: Key Stage 5

This page is designed to help learners, to continue their computing studies while at home at any time including during the holidays.

### Support is available

If you have any questions about the topic or any of the lesson resources you can contact us by emailing info@teachcomputing.org.

### Object-oriented programming

*The following resource links will take you to the FutureLearn website, all resources are free to access, but do require you to sign up for a free account with FutureLearn.*

Although this course is described as being 4 weeks long on FutureLearn, weeks 3 and 4 have been split up for the purposes of Home Teaching.

**Lesson 1**

During lesson 1 you will learn how objects are used in OOP and how to write a program using an object.

**Lesson 2**

During lesson 2 you will develop your own object-oriented adventure game.

**Lesson 3 **

During lesson 3 you learn how to extend a class using object-oriented programming.

**Lesson 4**

During lesson 4 you'll learn how to extend classes by introducing new characters into your game.

**Lesson 5**

During lesson 5 you'll learn the difference between class variables and instance variables.

**Lesson 6**

During lesson 6 you'll add the finishing touches to your game, and package it so that the classes you have written can be used by other people.

### Number bases and algorithms

*The following resource links will take you to the Isaac Computer Science website.*

### Lesson 1

**Topic**: Number bases **Lesson**: Unsigned and signed integers

In this lesson you will learn:

About unsigned integers:

- The range of values in unsigned binary
- How to add unsigned binary integers
- How to multiply unsigned binary integers (AQA only)
- How to subtract unsigned binary integers (OCR only)

About signed integers:

- How to represent signed integers in two’s complement
- How to convert from binary two’s complement to denary
- How to find the negative equivalent of a positive number
- How to convert from denary to binary two’s complement
- How to subtract signed integers in binary in two’s complement
- The range of values that can be stored in two’s complement
- How to represent signed integers in sign and magnitude (OCR only)

Click here to access lesson 1 resources.

### Lesson 2

**Topic**: Number bases **Lesson**: Fixed point numbers

In this lesson you will learn:

- How to convert a fixed point number number into denary
- How to convert a denary number into fixed point form
- How to represent signed fractional numbers in fixed-point form

Click here to access lesson 2 resources.

### Lesson 3

**Topic**: Number bases **Lesson**: Floating point numbers

In this lesson you will learn:

- How floating point numbers are represented in binary
- How to convert a floating point number into denary
- How to normalise a floating point number
- How to convert a denary number into floating point form
- Overflow and underflow

Click here to access lesson 3 resources.

### Lesson 4

**Topic**: Algorithms **Lesson**: Searching algorithms

In this lesson you will learn:

- How the linear search algorithm works when searching for an item in a list
- The complexity of linear search
- How the binary search algorithm works when searching for an item in a list
- The complexity of binary search

Click here to access lesson 4 resources.

### Lesson 5

**Topic**: Algorithms **Lesson**: Sorting algorithms

In this lesson you will learn:

- How the bubble sort algorithm works when sorting the items in a list
- The complexity of bubble sort
- How the merge sort algorithm works when sorting the items in a list
- The complexity of merge sort

Click here to access lesson 5 resources.

### Lesson 6

**Topic**: Algorithms **Lesson**: Dijkstra’s path finding algorithm

In this lesson you will learn:

- How Dijkstra’s algorithm works when finding the shortest path in a graph
- How Dijkstra’s algorithm is applied in a specific scenario