Excited to move closer to opening day!
SO one thing in this is something I wish has been better explained in other courses I have taken is the fundamentals of program design: input, processing and outputs. Other course have talked about it in a roundabout way. This is the first time I have seen this spelled out so plainly and I am seeing things in the big picture better with this concept.
Input – the information/values we start with. Can be either hard-coded or prompted.
Processing – What I need to do with the input in order to get the desired output. How we manipulate the starting values.
Output – the result we are looking for with the program; solving our problem.
And you will look at it in this order:
- What is the desired output?
- What inputs do I need to have to have the necessary data to form or inform the output?
- What processing do I need to do with my inputs to get the desired output?
Input, output and processing also have their roles in computer hardware, so:
- input devices – allow you to send information to the computer (keyboard, mouse, microphone)
- output devices – allow information from the computer to reach the outside world (printer, screen, speakers)
- processing devices – allow the computer to perform tasks by handling the intermediate stages between input and output (CPU or central processing unit also known as the computer’s brain, GPU or graphical processing unit, and motherboard)
Now I’ve looked it up and I find that there is something called the IPO Model (input–process–output (IPO) model. Feel free to read more about it on Wikipedia. Having mental models like this is really helpful for thinking about what you will do in a program.