Computational thinking is used by all web developers and programmers when creating a program, as it becomes logical to go through problems by first thinking of how to solve it and the steps needed to carry out each task.
It is often described as going through a series of steps when first encountering a problem (e.g. baking a cake):
Hungry?...
Abstraction is the act of removing unnecessary details in a problem to make the solution easier to achieve.
Abstraction is used in lots of different ways to help visualise a problem e.g:
It is very commonly used in programming where a large task can be solved by splitting into subroutines, that can each be coded independently (maybe by different people), but with given inputs and outputs so the other programmers can use the subroutine without worrying about its inner workings
When programming it is important to look ahead, focusing on both the end goal and future problems when designing code.
They do this through maintainable code, specifically with subroutines that are reusable by having set inputs and outputs that are given to the user.
This means other programmers or yourself in the future won't need to know or remember how the code works just that it does and needs specific inputs to give its given output
The computer itself is designed with some foresight; caching is used to store previously run instructions in quick access storage, so it can be used again if needed shortly
Procedurally thinking is where a problem that has been broken down into tasks is solved step by step in a procedure. This simple method is applied with other computational thinking techniques so that it can be used to help program a whole problem: Procedural abstraction is where a procedure is contained in a subroutine and is called upon without knowing its inner workings so that an entire program can be made of a series of procedures carried out that is abstracted to a degree, where the majority of the code is found within individual, hidden procedures. These procedures can be create through a top-down approach, where the main program is first made, that references multiple subroutines to carry out large tasks, which in turn reference there own procedures. This can be represented a sa heirarchy chart; a tree where the root is the main program and branching of are the subroutines.
Link to next Page