1/121
Vocabulary flashcards for AP Computer Science Principles key terms across multiple units.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Computing innovation
The creation or use of new computing technologies, methods, or systems to solve problems.
Collaboration
Working together with others on a project or task, often involving communication and sharing ideas.
Program
A set of instructions or code that tells a computer what to do to perform a specific task or solve a problem.
Code segment
A section of code within a program that performs a specific function or task.
Input
Data or information provided to a program for processing.
Output
Results produced by a program after processing input data.
Event-driven programming
A programming paradigm where the flow of the program is determined by events or user interactions.
Prototype
A preliminary version or model of a product or system used for testing or demonstration purposes.
Iterative development process
A software development approach where the project is repeatedly refined through cycles of planning, implementation, testing, and evaluation.
Incremental development process
A software development approach where the project is built in small, incremental steps, adding features or improvements over time.
User testing
Evaluating a product or system by having users interact with it to identify usability issues, gather feedback, and make improvements.
Storyboarding
Creating a sequence of sketches or diagrams to visualize the flow and interactions of a user interface or application.
Program documentation
Descriptions, explanations, or instructions provided alongside code to help developers understand, use, and maintain the program.
Comments
Notes or annotations added to code by developers to explain its purpose, functionality, or implementation details.
Logic error
A mistake in the logic or reasoning of a program, causing it to produce incorrect results or behave unexpectedly.
Syntax error
Errors in the structure or syntax of code that violate the rules of the programming language.
Run-time error
Errors that occur while a program is running, often due to unexpected conditions or invalid operations.
Overflow error
Error that occurs when a calculation or operation produces a result that is too large to be represented or stored.
Debug
The process of finding and fixing errors or bugs in a program to make it work correctly.
Variables
Storage locations in a program that hold data which can change during program execution.
Data
Information collected or stored in a format that can be processed or analyzed.
Bits
The smallest unit of data in a computer, represented by a binary digit of 0 or 1.
Bytes
A group of 8 bits, representing a single character or piece of data.
Abstraction
Simplifying complex data or concepts by focusing on important details.
Analog data
Continuous data that varies smoothly over time, like sound or temperature.
Integers
Whole numbers without fractions or decimal parts.
Binary
A numbering system with a base of 2, using only 0s and 1s to represent numbers.
Decimal
A numbering system with a base of 10, using digits 0 to 9 to represent numbers.
Data compression
Reducing the size of data to save storage space or transmission time.
Lossless data compression
Compression technique that reduces file size without losing any data.
Lossy data compression
Compression technique that reduces file size by removing some data, often reducing quality.
Metadata
Data that provides information about other data, such as the creation date of a file.
Incomplete data
Data lacking necessary information or missing parts.
Invalid data
Data that does not meet the required format or criteria.
Cleaning data
The process of detecting and correcting errors or inconsistencies in data.
Data sets
Collections of related data points or observations.
Scalability of systems
Ability of a system to handle increasing amounts of data or users.
Search tools
Software or algorithms used to find specific information within a dataset.
Data filtering systems
Tools or techniques used to extract specific data from a larger dataset.
Data visualization
Representing data graphically to help understand patterns, trends, or relationships.
Variable
A named storage location in a program that holds a value that can change during execution.
List
A collection of elements or items stored in a specific order, often accessed by their position.
Element
A single item or value within a list or collection, identified by its position or index.
Index
The position or location of an element within a list or array, typically starting from 0.
String
A sequence of characters or symbols, often used to represent text or data.
Data abstraction
Simplifying complex data or concepts by focusing on important details and hiding unnecessary details.
Algorithm
A step-by-step procedure or set of rules used to solve a problem or perform a task.
Sequencing
The process of executing instructions or operations in a specific order or sequence.
Code statement
A single line of code that performs a specific action or operation in a program.
Expression
A combination of variables, values, and operators that represents a single value.
Arithmetic operators
Symbols or functions used to perform mathematical operations, such as addition or subtraction.
Modulus
A mathematical operation that returns the remainder of a division operation.
Substring
A contiguous sequence of characters within a string.
Boolean value
A value representing true or false, often used in logical expressions and conditions.
Relational operators
Symbols used to compare two values or expressions, such as equality or greater than.
Logical operators
Operators used to combine or modify boolean values, such as AND, OR, and NOT.
Selection
A programming construct that allows different paths or actions to be taken based on conditions.
Nested selection
Using one selection construct within another, allowing for multiple levels of conditional execution.
Iteration
The process of repeating a set of instructions or operations multiple times in a program.
List operators
Operations or functions used to manipulate lists, such as adding or removing elements.
List traversal
Visiting each element in a list or collection, typically in a sequential order.
Binary search
A search algorithm that finds the position of a target value within a sorted list or array.
Sorted order
Arranging elements in a list or collection in ascending or descending order.
Procedure
A named block of code that performs a specific task or operation.
Function
A type of procedure that returns a value and can be used as part of an expression.
Parameter
A variable or value passed to a procedure or function as input.
Procedural abstraction
Hiding the implementation details of a procedure or function and focusing on its behavior or purpose.
Modularity
The concept of breaking down a program into smaller, independent modules or components.
Libraries
Collections of prewritten code or functions that can be used to extend the functionality of a program.
Random
Generating pseudo-random numbers or values in a program.
Simulation
The imitation of the operation of a real-world process or system over time.
Problem
A task or challenge that requires a solution.
Decision problem
A type of problem where the answer is either yes or no.
Efficiency
The measure of how well a program or algorithm performs in terms of time and space usage.
Algorithms that run in a reasonable/ an unreasonable amount of time
Algorithms that can complete their task within a practical timeframe, versus those that take too long to be practical.
Heuristic
A problem-solving approach that uses practical methods or rules of thumb, often leading to approximate solutions.
Decidable/ Undecidable problem
A problem for which a definite yes or no answer can be determined versus those that cannot be definitively answered.
Computing device
Any physical device capable of performing computations, such as a computer, smartphone, or tablet.
Computing system
A collection of hardware, software, and peripherals working together to perform computing tasks.
Computer network
A set of interconnected computing devices or systems that can communicate and share resources.
Path
The route or sequence of connections between nodes or devices in a network.
Routing
The process of determining the optimal path for data packets to travel across a network.
Bandwidth
The maximum amount of data that can be transmitted over a network connection in a given amount of time.
Internet
A global network of interconnected computer networks that communicate using standardized protocols.
Protocol
A set of rules or standards defining how data is transmitted and received over a network.
Scalability
The ability of a system or network to handle increasing amounts of data, users, or traffic.
Data stream
A continuous flow of data transmitted over a network or communication channel.
Packets
Small units of data sent over a network, each containing a portion of the transmitted information.
IP (Internet Protocol)
Protocol for addressing and routing data packets. Used for routing data packets across networks.
TCP (Transmission Control Protocol)
Connection-oriented protocol for reliable data delivery. Used for web browsing, email, and file transfer.
UDP (User Datagram Protocol)
Connectionless protocol for fast data transmission. Used for Real-time applications, video streaming, online gaming.
World Wide Web
An information system consisting of interlinked hypertext documents accessible via the Internet.
HTTP
A protocol used for transmitting web pages and other data over the Internet.
Fault-tolerant system
A computing system designed to continue functioning properly even in the presence of hardware or software failures.
Redundancy
Duplication of critical components or resources in a system to improve reliability and fault tolerance.
Sequential computing
A computing paradigm where tasks are performed one after another in a single sequence or thread.
Parallel computing
A computing paradigm where tasks are divided into smaller subtasks that can be executed simultaneously.
Distributed computing
A computing model where tasks are spread across multiple computers or devices in a network.
Sequential solution vs. Parallel computing solution
Comparing the approach of solving a problem sequentially versus using parallel computing techniques to solve it concurrently.
Benefits and challenges of distributed computing
Discussing the advantages and obstacles associated with distributed computing, such as scalability, fault tolerance, and network communication overhead.