1/73
Comprehensive vocabulary flashcards covering Big Ideas 1 through 5 of the AP Computer Science Principles curriculum including Creative Development, Data, Algorithms, Networking, and Impact of Computing.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
Computing Innovation
Includes a program as an integral part of its function and can be physical (e.g., self-driving car), nonphysical computing software (e.g., picture editing software), or a nonphysical computing concept (e.g., e-commerce).
Pair Programming
A common model used to facilitate collaboration between programmers.
Program (Software)
A collection of program statements that performs a specific task when run by a computer.
Code Segment
A collection of program statements that is part of a program.
Program Behavior
How a program functions during execution, often described by how a user interacts with it.
Program Inputs
Data sent to a computer for processing by a program in forms such as tactile, audio, visual, or text.
Event
Associated with an action, such as a key press or mouse click, that supplies input data to a program.
Event-Driven Programming
A programming paradigm where program statements are executed when triggered by events rather than through the sequential flow of control.
Program Outputs
Any data sent from a program to a device, which can be in forms such as tactile, audio, visual, or text.
Iterative Development Process
A process that requires refinement and revision based on feedback, testing, or reflection, often requiring developers to revisit earlier phases.
Incremental Development Process
A process that breaks a problem into smaller pieces and ensures each piece works before adding it to the whole.
Program Specification
Defines the requirements for a program, describing how it functions and potentially including user interactions.
Program Documentation
A written description of the function of a code segment, event, procedure, or program and how it was developed.
Comments
A form of program documentation written into the program to be read by people which does not affect how the program runs.
Logic Error
A mistake in the algorithm or program that causes it to behave incorrectly or unexpectedly.
Syntax Error
A mistake in the program where the rules of the programming language are not followed.
Run-time Error
A mistake in the program that occurs during the execution of a program.
Overflow Error
An error that occurs when a computer attempts to handle a number that is outside of the defined range of values.
Bit
Shorthand for binary digit, which is either 0 or 1.
Byte
A group consisting of 8 bits.
Abstraction
The process of reducing complexity by focusing on the main idea and hiding irrelevant details.
Analog Data
Data with values that change smoothly over time rather than in discrete intervals, such as pitch, volume, or colors in a painting.
Sampling
A technique used to approximate analog data digitally by measuring values of the analog signal at regular intervals.
Lossless Data Compression
Algorithm that reduces the number of bits while guaranteeing complete reconstruction of the original data.
Lossy Data Compression
Algorithm that significantly reduces the number of bits but reconstructed data is only an approximation of the original.
Information
The collection of facts and patterns extracted from data.
Metadata
Data about data, such as file size or date of creation, used for finding, organizing, and managing information.
Cleaning Data
A process that makes data uniform without changing its meaning, such as replacing equivalent abbreviations or spellings.
Scalability
The capacity for a system to change in size and scale to meet new demands.
Variable
An abstraction inside a program that can hold a value, representing one value at a time (though that value could be a collection like a list).
Assignment Operator
Represented by the ← operator, it allows a program to change the value represented by a variable.
List
An ordered sequence of elements where each element is assigned a unique index.
String
An ordered sequence of characters.
Data Abstraction
Provides a separation between the abstract properties of a data type and the concrete details of its representation.
Algorithm
A finite set of instructions that accomplish a specific task, constructed using sequencing, selection, and iteration.
Sequencing
The application of each step of an algorithm in the order in which the code statements are given.
Expression
A value, variable, operator, or procedure call that is evaluated to produce a single value.
Modulus Operator (MOD)
Evaluates to the remainder when one integer is divided by another; for example, 17 MOD 5 evaluates to 2.
Selection
Determines which parts of an algorithm are executed based on a condition being true or false.
Iteration
A repeating portion of an algorithm that repeats a specified number of times or until a given condition is met.
Linear Search
An algorithm that checks each element of a list in order until the desired value is found or all elements are checked.
Binary Search
An efficient algorithm that starts at the middle of a sorted data set and eliminates half of the data repeatedly until the value is found.
Procedure
A named group of programming instructions that may have parameters and return values; also called a method or function.
Parameters
The input variables of a procedure.
Arguments
The values specified for the parameters when a procedure is called.
Procedural Abstraction
Provides a name for a process and allows a procedure to be used knowing only what it does, not how it does it.
Modularity
The subdivision of a computer program into separate subprograms.
API (Application Program Interface)
Specifications for how the procedures in a library behave and can be used.
Simulation
A representation that uses varying sets of values to reflect the changing state of a phenomenon, often mimicking real-world events.
Heuristic
An approach to a problem that produces a solution not guaranteed to be optimal but used when guaranteed techniques are impractical.
Undecidable Problem
A problem for which no algorithm can be constructed that is always capable of providing a correct yes-or-no answer for all inputs.
Computing Device
A physical artifact that can run a program, such as a computer, tablet, router, or smart sensor.
Computing System
A group of computing devices and programs working together for a common purpose.
Bandwidth
The maximum amount of data that can be sent in a fixed amount of time, usually measured in bits per second.
Protocol
An agreed-upon set of rules that specify the behavior of a system, such as those used by the Internet.
Packet
A chunk of data encapsulated with metadata used for routing and reassembly on the Internet.
World Wide Web
A system of linked pages, programs, and files that uses the Internet and the HTTP protocol.
Fault-Tolerant
A system's ability to continue to function even when some of its components or connections fail.
Redundancy
The inclusion of extra components, such as multiple paths between devices, to mitigate the failure of a system.
Sequential Computing
A computational model in which operations are performed in order one at a time.
Parallel Computing
A model where a program is broken into multiple smaller operations, some of which are performed simultaneously.
Distributed Computing
A model in which multiple devices are used to run a program to solve larger problems quicker.
Digital Divide
Differing access to computing devices and the Internet based on socioeconomic, geographic, or demographic characteristics.
Citizen Science
Scientific research conducted in whole or part by distributed individuals who contribute data to research using their own devices.
Crowdsourcing
The practice of obtaining input or information from a large number of people via the Internet.
Creative Commons
A public copyright license that enables the free distribution of otherwise copyrighted work when the creator wants to give others rights to share and build upon it.
Personally Identifiable Information (PII)
Information about an individual that identifies, links, or describes them, such as Social Security numbers, biometric data, or medical information.
Multifactor Authentication
A method of access control requiring at least two pieces of evidence from categories like knowledge (something you know), possession (something you have), or inherence (something you are).
Symmetric Key Encryption
An encryption approach involving one single key for both encryption and decryption.
Public Key Encryption
An encryption approach pairing a public key for encryption and a private key for decryption.
Malware
Software intended to damage a computing system or to take partial control over its operation.
Phishing
A technique that attempts to trick a user into providing personal information to access sensitive online resources.
Keylogging
The use of a program to record every keystroke made by a computer user to gain fraudulent access to confidential information.
Rogue Access Point
A wireless access point that gives unauthorized access to secure networks.