THINKING ABSTRACTLY Flashcards
(4 cards)
Give the benefits of using abstraction when writing a program and one disadvantage
Reduces programming time
As factors that can detract from the program can be ignored
Reduces complexity of code
Therefore can run on lower spec computers
Reduces amount of memory required /
computational power
Simplifies the problem so it’s easier to solve/
understand (by recognising common patterns)
As unnecessary aspects will not detract from the main purpose of the program
Allows programmers to focus on core aspects of
the problem
Too much abstraction can detract from the appeal of the game, may be too simplistic/not realistic enough, may not have enough scope to engage users
State what is meant by the term ‘abstraction’
Abstraction is the process of
separating ideas from
particular instances / reality.
It is a means of hiding detail/only
using relevant detail, it is a
representation of reality.
….to allow programmers to focus on core aspects of the problem….
….simplifies a complex problem
Give examples of where abstraction is used in programs/diagrams
- Will not be to scale
- Removal of unnecessary visual elements such as buildings on the ground/only show what is relevant
- Simplification of controls
- Simply real-life objects by representing them with specific objects/shapes
- Diagram is not to scale
- Remove details of the room
- Simplified physics
- Simplified / removed weather
Describe how abstraction is used in the design of trees
- The puzzle is not shown in the diagram
- The graph shows different sequences of sub problems
in the puzzle that can be solved to get to the final solution, in which the ways of getting to each state is represented by a line, and each state is represented by symbols - All states are visible all at once