Inputs, Outputs and Thinking Ahead Flashcards
Input
signals or data received by the system
Output
signals or data sent from the system.
Performance Modelling
working out the most optimal design for the best performance.
Caching
storing bits of data that can be reused from storage.
Reusable Components
using code and parts of code that can be used/called upon again and again in a computer program.
What is an input in a computer system?
An input is data or signals received by the system from external sources, such as a keyboard, mouse, or sensor.
What is an output in a computer system?
An output is data or signals sent from the system to external devices, such as a display, printer, or speaker.
What does “thinking ahead” mean in the context of computer science?
Thinking ahead involves anticipating the inputs, outputs, and processes needed for a program before implementation, considering potential future requirements or user actions.
Why is considering inputs important when designing a program?
Understanding inputs ensures the program can correctly process data, handle unexpected values, and validate user input to avoid errors.
Give an example of a common input validation check.
Ensuring a user enters a valid email format, checking that a number falls within a specified range, or ensuring a field is not left blank.
What is an “input device”?
An input device is any hardware component that sends data to the computer, such as a keyboard, mouse, or microphone.
What is an “output device”?
An output device is any hardware component that receives and displays data from the computer, such as a monitor, printer, or speakers.
What is meant by “preconditions” in procedural thinking?
Preconditions are conditions or requirements that must be met before a procedure or algorithm can be executed properly.
Why are preconditions important in program design?
They help ensure that the program runs correctly by validating the initial state before executing a procedure, reducing the chances of errors or unexpected behavior.
How does “thinking ahead” affect system performance?
By anticipating and preparing for future needs (e.g., handling larger inputs or optimizing for faster outputs), you can design more efficient and scalable systems.