2.1.1 Thinking abstractly Flashcards
1
Q
abstraction
A
process of removing excessive/irrelevant details so problem consists of only key features.
2
Q
need for abstraction
A
hides information too complex or unnecessary/irrelevant to main purpose
3
Q
advantages of abstraction
A
- more efficient design during software development, as programmers can focus on main purpose of program
- reduces time needed to be spent on the project
- removing irrelevant details prevents program from getting large
4
Q
disadvantages of abstraction
A
- loss of detail, may be needed if errors occur
5
Q
abstraction vs reality
A
- abstraction is simplified representation of reality
6
Q
describing abstract model
A
- what problem needs to be solved?
- how will model be used?
- who will model be used by?
- which parts of problem are relevant?