2.1 Computational thinking Extra Flashcards
Explain how programmers make use of reusable components when developing large programs
Software is modular (1), an example
being an object / function (1). Modules
can be transplanted into new software
(1) or can be shared at run time (1)
through the use of program libraries
What does using extra computational resources mean
Could detract from the main purpose of program
What can too much abstraction do
detract from
the appeal of the game, may be too
simplistic / not realistic enough, may
not have enough scope to engage
users
Explain some ways of gathering data
Questionnaire, interview, observation, meeting
What does a function having a single entry point ensure
this reduces complexity and
makes the search for any bugs more
straightforward
Why should variables not be set up outside the scope of a function
this sets a limit
on where to look for bugs and reduces
the likelihood of a problem spread
across many modules
What is hardware specific code
Code that only works on a specific piece of hardware
Concurrent processing v parralel
People often confuse concurrent processing and parallel processing as being the same
thing, but they are slightly different. Parallel processing is when multiple processors are
used to complete more than one task simultaneously. Meanwhile, concurrent processing is
when each task is given a slice of processor time to make it look like the tasks are being
completed simultaneously when in reality they are executed sequentially
Example of how concurrent processing could be used in a flight simulator
Each plane can move independently and can all react to different events like the weather