Abstraction
This is an important concept. You should fully understand this.
In software engineering and computer science, abstraction is a technique for arranging complexity of computer systems. It works by establishing a level of complexity on which a person interacts with the system, suppressing the more complex details below the current level.[1]
Identifying examples of abstraction[edit]
(awaiting permission to post material)
Anytime you see a simple interface covering a more complex system, you should think "abstraction".
- A car is a very complex machine but the interface is simple (a steering wheel, a gas pedal and a gear shift)
- A video game controller only has a few buttons, but underneath the controller is complex control mechanism
- A programming language can be fairly simple, but it translates the instructions you write into machine code, which is impossibly complex
Do you understand this?[edit]
Standards[edit]
- Identify examples of abstraction
- Explain why abstraction is required in the derivation of computational solutions for a specified situation
- Construct an abstraction from a specified situation
- Distinguish between a real-world entity and its abstraction