2.1.1 Thinking Abstractly Flashcards

You may prefer our related Brainscape-certified flashcards:
1
Q

What is abstraction?

A

The process of removing unnecessary details and keeping the details tat are important in context

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How does abstraction allow non experts to make use of a system?

A

Hides irrelevant and complex information in abstract models

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How are flowcharts an example of abstraction?

A
  • Flowcharts are an example of abstracted program code
How well did you know this?
1
Not at all
2
3
4
5
Perfectly