ALL vocab from AP Computer Science Principles *NOTE* these flashcard sets are constantly being updated when "updates" are needed. *NOTE* definitions with highlighted-bolded words are IMPORTANT and are keys to memorizing the vocab more easily and efficently
Pair Programming
a collaborative programming style in which two programmers switch between the roles of writing code and designing user interface
Multifactor authentication
another layer of added security when logging in to personal information
ex: after entering a password for an online bank account, a user must also enter a code that is sent to the user’s phone via text message
Cybersecurity
protects our electronic devices and networks from attacks and unauthorized use
Phishing
technique that attempts to trick a user into providing personal information. That personal information can then be used to access sensitive online resources
ex: fake bank emails attempting to steal your bank info
Keylogging
use of a program to record every keystroke made by a computer user
Encryption
process of encoding messages to keep them secret, so only “authorized” parties can read it
Decryption
process that reverses encryption, taking a secret message and reproducing the original plain text
Public Key Encryption
uses a public key for encryption AND a private key for decryption.
NOTE: the receivers public key is required for encryption and private key for the decryption
Router
a type of computer that forwards data across a network
Routing
is the process of finding a path from sender to receiver
Bandwidth
is a measure of the maximum amount of data that can be transferred through a channel or network connection.
Protocol
an agreed-upon set of rules that specify the behavior of some system
Internet protocol (IP)
a protocol for sending data across the internet that assigns unique numbers to each connected device
Domain Name System (DNS)
the system responsible for translating domain names like example.com into IP addresses
Hypertext Transfer Protocol (HTTP)
a protocol for computers to request and share the pages that make up the WWW on the internet
Cyberattacks
are malicious attempts to damage or disrupt computer systems, networks, and data.
Program
collection of program statements
Program Statement
a command or instruction (code)
Programming
A collaborative and creative process that brings ideas to life through the development of software.
Comments
form of program documentation written into the program, DOESN’T affect how the program will run
purpose: to be read by other people, help you in the the development of your program
Computing Innovation
includes a program as an integral part of its function
ex: self-driving cars or a picture editing software
Internet
network of interconnected networks. Designed to SCALE
World Wide Web (WWW)
system of linked pages, programs, or files that is accessed via the Internet
Syntax Error
The code does not work properly because it is written incorrectly
Runtime Error
A mistake that occurs during the execution of a program that ceases the execution.
Logic Error
A mistake in the algorithm or program that causes it to behave incorrectly or unexpectedly.
Overflow Error
when the numbers are too big for the computer
Round-Off Error
caused by imprecise values or results
Bit
The smallest unit of information stored or manipulated on a computer; consists of either zero or one.
Analog Signal
signal that’s measured at regular intervals
Digital Signal
A sequence of discrete symbols
Sampling
Recording an analog signal at regular discrete moments and converting them to a digital signal.
Lossless Algorithms
a process for reducing the number of bits needed to represent something without loosing any information
Lossy Algorithms
a process for reducing the number of bits needed to represent something in which some information is lost or thrown away
Algorithm
A set of steps to do a task, often implemented with software.
List
data type that holds a collection of values
ex: a grocery list or spotify playlist
Elements (List)
Individual items in a list
Index (List)
a number referring to their placement in the list. Index starts at 0 and increases by 1
ex: var classList = ["Jacob", "Alex", "April"];
Jacob = Index 0
Alex = Index 1
April = Index 2
Append (List)
adds a new element to the end of the list. The size of the list increases by one.
Insert (List)
inserts an element into a list at the index given
Length (List)
number of elements in the list
Strings
sequence of characters and can contain letters, numbers, symbols and even spaces and are denoted with quotes
Boolean Values
can only be either true or false
Iterations/Loops
a repetitive portion of an algorithm which repeats a specified number of times or until a given condition is met
Procedures/Functions
sections of code that will be executed only when they are called upon
ex:
callFunction();
function myFunction() {
Selection/ IF statement
Set of statements to execute under a certain condition.
ex: IF cats have wings, then statement will run, if it doesn’t, the code won’t run
Parameter/Placeholder
a variable in a function definition. Used as a placeholder for values that will be passed through the function
Arguments
the value passed to the parameter
Digital Certification
certificates that validates the ownership of encryption keys used in secure communications and are based on a trust model
Malware
software indented to damage a computing system or to take partial control over its operation
Rouge Access Point
a wireless access point that gives unauthorized access to secure networks
Redundancy/Fault-Tolerant
the inclusion of extra components so that a system can continue to work even if individual components fail
ex: having more than one path between any 2 connected device in a network
Abstraction
process of reducing complexity by focusing on the main idea
Byte
group of 8 bits
Converting Binary to Decimal
Create the following flippy-do
Implement your binary to the table where the last number of your binary starts at the end of the flippy-do
For the boxes you got “0” in the bottom row, ignore them
For the boxes you got a “1” in the bottom row, add ALL the value given above these boxes
Converting Decimal to Binary
Create the following flippy-do
subtract the decimal by the highest value that’s less than your decimal in the flippy-do
The sum you get will need to be subtracted again by the highest value in the flippy-do
Repeat step 2 until you get a sum of 0
For the values you subtracted your decimal with, put a “1” on the table, for those you didn’t, put “0”
Symmetric Key Encryption
involves one key for both encryption and decryption. Since the key can be used to unlock data, should be kept secret
Asymmetric Key Encryption
when the key to encrypt a message is different from the private key used to decrypt the message
Packets
a chunk of data sent over a network. Larger messages are divided into packets that may arrive at the destination in order, out-of-order, or not at all
Transmission Control Protocol (TCP)
a protocol for sending packets slowly; does error-checking to ensure all packets are received and properly ordered
User Datagram Protocol (UDP)
a protocol for sending packets quickly with minimal error-checking and no resending of dropped packets
Digital Divide
differing access to computing devices and the internet, based on socioeconomic, geographic, or demographic characteristics
Crowdsourcing
practice of using input or information obtained from a large number of people via the Internet
Citizen Science Project
the involvement of ordinary people in scientific research and data collection
ex: people all over the world count birds they see at local feeders for scientific research
Creative Common License
license that allows Individuals to freely distribute or use the contents of others without needing to obtain additional permissions from the author
Parallel Computing
where the program is broken into multiple smaller sequential computing operations, some of which are performed simultaneously
NOTE: parallel computing is executed at the same time AND are interdependent
Algorithmically
process of designing and implementing a solution to a problem using an algorithm
Metadata
data that describes other pieces of data
Input
Data that are sent to a computer for processing by a program
ex: clicking a mouse or clicking a button
Output
any data sent from a computer to device
ex: text, images, sounds, or video displayed after input
Return
used to return the flow of control to the point where the function was called and to return the values of expression
Personal Identifiable Information (PII)
information about an individual that identifies, links, relate, or describe them
MOD
the remainder that is left after a number is divided by another number
ex: 3 MOD 2 = 1
Open Protocol
protocols not owned by any particular company and not limited to a particular company’s products
purpose: allows all connected hardware and software to communicate in a standard way
Internet Engineering Task Force (IETF)
develops and oversees standards such as hypertext transfer protocol (HTTP), Internet protocol (IP), and simple mail transfer protocol (SMTP).
Heuristic
A problem solving approach (algorithm) to find a satisfactory solution where finding an exact solution is impossible
Floating-Point Representation (FPR)
a number with a decimal point
ex: 5.5 and 0.25 would be FPR, but 91 and 0 won’t be