Thinking Abstractly Flashcards

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

What is computational thinking?

A

A way of solving problems, designing systems and understanding human behaviour that draws on concepts fundamental to computer science

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

What is abstraction?

A

It factors out details so a programmer can focus on working out a solution to a specific area and reduces the complexity of a problem making it easier to solve

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

Why do we need abstraction?

A

It allows controlled exposure to details as a series of layers if a problem is too complex to solve

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

What would skipping levels of abstraction lead to?

A

May lead to an increase in complexity

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

Is an accurate view of London from above abstraction or reality?

A

Reality - nothing added and nothing hidden. It is completely useless to give this map to someone unfamiliar with London and expect them to make a tube journey across the city.

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

Is an image of the London Underground map abstraction or reality?

A

Abstraction as it does not have details such as roads, houses, buildings etc. just the most useful information for navigating London’s underground system

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

Is an image of the complete Central line abstraction or reality?

A

Abstraction - no need to show any additional detail or complexity of other tube lines so is useful to show on the Central line only

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

What is an abstract model?

A

A way of representing a part of a problem that has been abstracted

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

What are examples of abstract models?

A

Diagrams, tables, maps, graphs

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

Positives of Abstraction

A

Allows you to make predictions

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

Negatives of Abstraction

A
  • May be difficult to predict markets, users, trends and technical influences
  • Too many variables may mean the scenario is too complex to model accurately
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is performance modelling?

A

The process of approximating how well models perform using mathematics based on the use of simulations and mathematical approximations without having to perform detailed testing.

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

Positives of performance modelling

A
  • Simulations predict outcomes
  • Cost effective, time saving and safety first approach
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Negatives of performance modelling

A
  • Requires accurate data
  • Statistics (relevant data) is used to build the model
  • Randomisation may be needed to model uncertainty
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What are visualisations?

A

Allows us to create a mental image of what a program will do or how it will work

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

Examples of visualisations

A

Binary trees, Logic gates, Lists

17
Q

What is data abstraction?

A

What we use to represent the important parts of data structures

18
Q

How else can programming languages use abstraction?

A

Through variables and function calls