2.1.1 Thinking Abstractly Flashcards
1
Q
What is abstraction?
A
The process of removing unnecessary details and keeping the details tat are important in context
2
Q
Why is abstraction needed?
A
- Without abstraction, it would be difficult and confusing to model and display certain features
- For programmers, extra programming and resources that are unnecessary may be used which could detract the main purpose of the program
3
Q
How is abstraction useful for software development?
A
- Enables for more efficient software design as programmers can focus on the core elements
- Saves time needed to spend on the project
- Prevents program from getting unnecessarily large
4
Q
How does abstraction allow non experts to make use of a system?
A
Hides irrelevant and complex information in abstract models
5
Q
State two advantages of abstraction in programming language
A
- Easier to remember syntax in high level language as it is close to natural language
- Coding becomes accessible to beginners
6
Q
What is the difference between abstraction and reality?
A
- Reality is the process of keeping everything the same without removing or adding any details
- Abstraction is the simplified representation of reality
7
Q
How are flowcharts an example of abstraction?
A
- Flowcharts are an example of abstracted program code