AP Computer Science Principles Exam Review 2024
Data Type
A classification of data which tells the compiler or interpreter how the programmer intends to use the data. Examples include : string, integer, float (decimal point number)
Server
A computer hosting data for others to access
Virus
A kind of malware that tries to spread itself over the network to other computers.
Debugging
A multi-step process that involves identifying a problem, isolating the source of the problem, and then either correcting the problem or determining a way to work around it. The final step of ______________ is to test the correction or workaround and make sure it works.
Internet
A network of independent but connected devices all over the world.
Lists
Reports a newly created _________ with the given items. The _______ items can be anything: text, numbers, blocks, scripts, and even other ______.
Open Access
A policy that allows people to have read access to things, e.g., libraries or online data
Undecidable
A problem that is so difficult, we can't ever create an algorithm that would be able to answer yes or no for all inputs, like determining if a user's program run on some input would always stop and not run forever
Algorithim
A standard way to perform an operation.
Peer-to-peer Networks
A system where one user's computer connects through the Internet to another user's computer without going through an intermediary "centralized" computer to manage the connection
Crowdsourcing
Asking lots of users online to help with something, like funding a project, or running SETI@Home to help look for extraterrestrial signals
Overflow
error that results when the number of bits is not enough to hold the number, like a car's odometer "rolling over"
Lossless
Compressing data in a way that preserves all data away and allows full recovery of the original, good compression -- usually not as good as lossy, like PNG images
Lossy
Compressing data in a way that throws some data away and makes it almost impossible to recover the original, great compression, JPG,MP3, MP4
Domain Name
The name of the server that hosts the data (bjc.berkeley.edu)
Redundant
There are multiple pathways among the physical connections of the Internet to create redundancy. Even if one pathway is unavailable, there is still another way to transmit a message from sender to receiver
IP v4
This address is big enough to support 2^32 computers. That's about four billion (4 · 109), but there are more than seven billion people on Earth, so there aren't enough IP addresses to go around. Each of the four numbers in a typical IP address today is an eight-bit byte with a value between 0 and 255
Packets
When you send a message over the Internet, your computer divides it into small chunks called __________ that it sends individually, each on its own path. A __________ can include any kind of data: text, numbers, lists, etc.
Public key cryptography
Where the user has a public key that he or she uses to encrypt the message to send to the receiver who will then use his or her private key to decode the message.
Encryption
Works by converting information or data into a language that cannot be understood in one glance. Usually, the information is sent to a person who can decrypt it using a key only they have access, keeping the information's privacy intact.
Logical Error or Semantic Error
You are not logically setting up the program to process correctly.
AND
a Boolean operator. *Both* have to be true in order for it to evaluate to true.
NOT
a Boolean operator. Everything except the entered input is true.
OR
a Boolean operator. one or the other has to be true in order for it to evaluate to true.
Selection
a boolean condition to determine which of two algorithmic paths are taken, aka if-then
Round-off
error that results when the number of bits is not enough to represent the actual number, like 3 digits to represent π as 3.14
() mod ()
finds the remainder after division of one number by another
Reasonable Time
polynomial in the number of steps an algorithm takes in the worst case based on the input size
Binary Search
requires the list to be sorted in order and then cutting the list in half
Scalability
the ability of the net to keep working even as the size of the network and the amount of traffic over the network increase.
Path
the location of the data in a hierarchy of folders on the server (Website/privacy.html)
Protocol
the standard for communication between browsers and servers (usually "http" or "https") Sometimes not visible in browsers like Google Chrome
Heuristic
using a "rule" to guide an algorithm, like always walking toward the north star if you were stuck in a forest
Iteration
using a looping control structure, like while, for, foreach, repeat, repeat-until, etc.
Fault Tolerance
ability to work around problems
Not ()
an Operators block and a Boolean block. The block checks if the boolean inside it is false — if it is false, the block returns true; if the condition is true, it returns false.
() > ()
an Operators block and a Boolean block. The block checks if the first value is greater than the other value. If it is less, the block returns true; if not, it returns false.
() or ()
an Operators block and a Boolean block. The block joins two boolean blocks so any one of them can be true to return true — if at least one of them is true, the block returns true; if neither of them are true, it returns false. This block can be stacked inside itself — this can be used to fit more booleans in.
() and ()
an Operators block and a Boolean block. The block joins two boolean blocks so they both have to be true to return true. If they are both true, the block returns true; if they are not all true or none true, it returns false.
Boolean Expression
an expression that results in a __________ value, that is, in a value of either true or false .
Sequencing
code flows line by line, one after another, like a recipe
Metadata
data about data, like a camera storing the location, aperture, shutter speed, etc. for a digital photo
DDoS
Distributed Denial of Service -Consists of sending a lot of requests to a server at the same time. This can overload the server's network bandwidth. -Causes a temporary inability to reach the targeted server so other users of that server are denied service.
Why is abstraction important?
It eliminates the details and condenses it down to one line of code.
Caesar Cipher
Also known as a shift cipher, is one of the simplest forms of encryption. It is a substitution cipher where each letter in the original message (called the plaintext) is replaced with a letter corresponding to a certain number of letters up or down in the alphabet.
Creative Commons
An alternative to copyright that allows people to declare how they want their artistic creations to be shared, remixed, used in noncommercial contexts, and how the policy should propagate with remixed versions
Phishing
An attacker sends you an email that appears to be from some official organization (such as your bank) and tricks you into giving information to the attackers (such as your bank password).
APIs
Application Programming Interface
DNS
Domain Name System The hierarchical addressing protocol that is human-readable
How does Public Key Cryptography work?
Example: If Bob wants to send sensitive data to Alice, and wants to be sure that only Alice may be able to read it, he will encrypt the data with Alice's Public Key. Only Alice has access to her corresponding Private Key and as a result is the only person with the capability of decrypting the encrypted data back into its original form. As only Alice has access to her Private Key, it is possible that only Alice can decrypt the encrypted data. Even if someone else gains access to the encrypted data, it will remain confidential as they should not have access to Alice's Private Key.
F and F equals
F
F or F equals
F
Linear Search
Going one by one vs starting in the middle and going left/right like looking for a word in the dictionary
Antivirus Software
Helps protect against virus attacks
Authentication
Helps to verify that original author of the code is what he or she claims to be.
HTTP
HyperText Transport Protocol which is used for sending and receiving web pages
HTML
Hypertext markup language Most web pages are written with ________
Nested IFs
If you need to test for more than one condition, then take one of several actions, depending on the result of the tests, you can nest multiple IF statements together in one formula.
IP
Internet Protocol An addressing system that finds paths to distant computers Specifies how a router handles a request for another IP address.
ISP
Internet Service Provider
If () Clause
Keep Checking: If this is true Then do this
If () . . . Else Clause
Keep Checking: If this is true . . . then do this . . . and if it is not true then do this
Citizen Science
Lots of people to help with a scientific project, like asking everyone around the world to count the butterflies they see one day
Mathematical expression
Numbers, symbols and operators (such as + and ×) grouped together that show the value of something.
Conditional Statement
Set of rules performed if a certain condition is met.
Input Type
Set up different variables to take a specific ______ _______.
Protocols
Standards for communication
Open Protocols
Standards that are not owned by a company
F or T equals
T
T or F equals
T
T or T equals
T
Routers
The "connection points" of the Internet. Networking devices that route traffic between subnetworks on the Internet.
Moore's Law
The # of transistors on a chip doubles every two years
World Wide Web
The collection of interlinked website documents (such as HTML files) that you can view with a web browser by typing addresses like http://bjc.berkeley.edu/website/privacy.html.
Who is in charge of the Internet?
The computers on the Internet and the connections among them don't belong to any one organization.
Digital Divide
The idea that some communities / populations have less access to computing than others
IP v6
The long-term solution is to increase the length of an IP address. The new IP addresses are 128 bits wide, which is enough to support 2^128 (about 1038) computers.
TCP
Transmission Control Protocol Guarantees reliable transmission by breaking messages into packets, keeping track of which packets have been received successfully, resending any that have been lost, and specifying the order for reassembling the data on the other end.
Which protocols are used to keep secure HTTP connections?
Transport Layer Security (TLS) or maybe an older version called Secure Sockets Layer (SSL) With these protocols, the site you are visiting sends its public key, and your browser uses it to encrypt the information you send.
Brute force
Trying all the possible ways to crack a code
URL
Uniform Resource Locator An address for accessing specific web data located on a server
Certificate Authorities
Used by many websites for encryption to protect files and information that is transmitted over the Internet. They issue certificates to verify the identity of a user or computer.
UDP
User Datagram Protocol provides timely but unreliable message delivery
Cloud Computing
Using distributed calculations and/or storage for big data or a web application
Not reasonable time
Usually exponential in the number of steps, like doubling every time your input grows by one
Default Value
What the code is set to when it is started.