Unit 10 - Computational Thinking Flashcards

1
Q

What is abstraction?

A

The process of removing excessive details to arrive at a representation of a problem that consists of only the key features.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is representational abstraction?

A

Analysing what is relevant to a given scenario and simplifying a problem based on the information.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is abstraction by generalisation?

A

Grouping together similarities within a problem to identify what kind of problem it is. This allows certain problems to be categorised as being of a particular type and solved with a common solution.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the purpose of data abstraction?

A

Details about how data is being stored are hidden, so programmers can make use of abstract data structures such as stacks and queues without concerning
themselves with how these structures are implemented.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is procedural abstraction?

A

Programmers performing functions without having any knowledge about the code used to implement this functionality.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Explain the benefit of abstraction.

A

Abstraction enables for more efficient design during software development as
programmers can focus on elements that need to be built into the software rather than worrying about unnecessary details.

This then reduces the time needed to be spent on the project and prevents the program from getting unnecessarily large.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Give an example in which abstraction is used.

A

The TCP/IP model is an abstraction for how networks function, separated into four layers of abstraction: application, transport, internet and link. Each layer deals with a different part of the communication process, and separating these stages out makes them simpler to understand, and each layer does not need to know how other layers work.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly