Revise Computingrevisecomputing.co.uk
Free student revisionSee questionsFor schoolsSchool enquiry
Free revisionSee questionsFor schoolsSchool enquiry
Knowledge/A Level/H446/02 Algorithms and programming/Thinking abstractly/The need for abstraction

The need for abstraction

The need for abstraction.

2.1.1 Thinking abstractly

Thinking abstractly — Note 2 of 4

Candidates need to understand the benefits of abstraction and be able to apply these benefits to a specific scenario.

What you need to know

Real-world problems contain far too much detail to model completely. Abstraction makes problems manageable, reduces the time and resources needed to solve them and makes programs simpler to build and use.

What to know

  • Abstraction reduces complexity, making a problem easier to understand and solve.
  • Less detail means less processing power, memory and development time are needed.
  • It allows programmers to focus on the important parts of the problem.
  • It makes programs simpler to use: users see an interface rather than the underlying complexity.
  • Procedural and data abstraction allow programmers to reuse subroutines and libraries without understanding their internal workings.
  • Abstraction allows teams to work on separate parts of a system, each only needing to know how the other parts are used.

Exam technique

  • Tip:Link the benefit to the scenario, e.g. 'the simulation does not model each raindrop, which reduces the processing needed so it runs in real time'.
← Previous noteThe nature of abstraction2.1.1 Thinking abstractlyNext note →The differences between an abstraction and reality2.1.1 Thinking abstractly

Back to Thinking abstractly

Thinking abstractly

Note 2 of 4

  1. 1The nature of abstraction
  2. 2The need for abstraction
  3. 3The differences between an abstraction and reality
  4. 4Devise an abstract model for a variety of situations
Topic overview