44 total
By the end of this subtopic, you should be able to:
When computer scientists solve a problem, they do not start by writing code straight away. First, they think carefully about the problem. They work out what the problem really is, what matters most, and how the solution can be organised.
This way of thinking is called computational thinking. It means studying a problem in a clear and logical way so that a computer-based solution can be created.
For this subtopic, the two main computational thinking skills you need to know are:
These skills are useful because many real problems are large, messy, and full of extra detail. If we try to solve everything at once, it becomes confusing. Computational thinking helps us make the problem simpler and more manageable.
Abstraction means focusing only on the important details of a problem and leaving out the details that do not help solve it.
In simple words, abstraction means:
When a problem is too detailed or too complicated, abstraction helps by removing unnecessary parts. This makes it easier to understand the problem and design a solution.
For example, if you are designing a program to manage a school library, you do not need to include every possible fact about a book, such as the colour of the cover or tiny marks on the pages. You only include the details that matter to the system, such as:
Those are the important features for the system. The rest can be ignored.
Abstraction is needed because real-life situations usually contain too much information.
If every detail is included, the model or solution becomes harder to understand and harder to build. A computer scientist needs to decide which details matter for the purpose of the system.
Without abstraction:
Abstraction helps us cut away the extra parts so we can concentrate on the real problem.
Sign in to view full notes