Section 2 Chapter 11 - Abstraction and Automation Flashcards

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

The two steps of computational thinking

A
  • Formulate the problem as a computational problem

- Construct an algorithm to solve the problem

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

Representational abstraction

A

Representation arrived at by removing unnecessary details

e.g. A simulation of a snooker ball, the London tube map, a flight simulator

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

First generation language

A

Machine code

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

Second generation language

A

Assembly

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

Third generation language

A

Abstract languages starting with BASIC and FORTRAN

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

Information hiding

A

Removing all irrelevant details from a problem e.g. the konigsberg bridges problem

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

Procedural abstraction

A

Keeping the actual values separate from the overall design. It represents a computational method. (It means abstracting a method of doing something)

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

Encapsulation

A

The use of local variables

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

Functional abstraction

A

Hiding the method used to complete a task. (The binary search algorithm is a procedural abstraction. A functional abstraction can be arrived at by abstracting the binary search to simply a ‘search algorithm’. It is not relevant how the search is performed.)

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

Data abstraction

A

The details of how the data is actually represented is hidden. For instance when using a float you don’t need to know how it is stored.

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

Decomposition

A

Breaking down a complex problem into a number of sub problems each with an identifiable task which might itself be further subdivided

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

Composition

A

Combining procedures to build compound procedures.

Can also mean combining objects to form compound data

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

Problem abstraction

A

Removing details until the problem is possible to solve

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

Automation

A

Building and putting models into action to solve problems

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

Graph unfolding

A

Rearranging a graph so that easier to see what it means

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