AP Computer Science Principles Vocabulary
Fundamental Programming and Algorithmic Concepts
- Abstraction
- Defined as the process of reducing complexity by focusing on the main idea.
- This concept allows for the hiding of specific details, utilizing a high-level concept (such as a function name) to represent a more complex set of instructions.
- Heuristic
- Described as a "rule of thumb" or an approach to finding a solution.
- This method is used when an exact algorithm is impractical or too slow.
- Example: Finding a "good enough" path in a GPS system.
- Selection
- A generic term utilized for a "decision" within code.
- It typically utilizes if-statements to determine which specific path a program should take.
- Iteration
- Refers to the repetition of a specific process.
- Common implementations include loops such as repeat, for, or while.
Search Algorithms
- Linear Search
- A search algorithm that checks every individual element in a list one by one.
- The process continues sequentially until the target element is found.
- Binary Search
- A search algorithm characterized as being much faster than linear search.
- It functions by repeatedly dividing a sorted list in half until the target is located.
- Bit
- The smallest unit of data in computing.
- It represents a value of either 0 or a 1.
- Metadata
- This is data that describes other data.
- Examples of metadata include:
- The date a photo was taken.
- The file size of a document.
Internet Infrastructure and Networking Protocols
- DNS (Domain Name System)
- Known as the "phone book" of the Internet.
- Its function is to translate human-readable URLs (such as google.com) into IP addresses.
- TCP (Transmission Control Protocol)
- A protocol that works in conjunction with IP (Internet Protocol).
- It ensures that packets of data arrive reliably and in the correct intended order.
- Bandwidth
- The maximum amount of data that can be sent in a fixed amount of time.
- It is usually measured in units of bits per second.
Global Impact, Licensing, and Ethics
- Citizen Science
- Scientific research conducted by distributed individuals.
- Many participants may not be professional scientists.
- These individuals contribute relevant data using their own personal computing devices.
- Open Access / Open Source
- Policies or licenses that allow software or data to be freely shared, used, and modified by any party.
- Creative Commons
- A public copyright license.
- It enables the free distribution of a work that would otherwise be copyrighted.
- Bias (in Algorithms)
- Occurs when an algorithm Provides systematically prejudiced results.
- This results from erroneous assumptions during the machine learning process or the use of biased training data.
- Malware
- Software specifically intended to damage or disable computers and computer systems.
- Examples include:
- Viruses.
- Worms.
- Ransomware.
- Rogue Access Point
- A wireless access point that has been installed on a secure network without explicit authorization.
- These are often used as a means to intercept data.
- Encryption
- The process of encoding messages to keep them secret.
- The goal is to ensure that only "authorized" parties have the ability to read the information.
- Key considerations include the distinction between Encryption and Decryption.
- Key types include:
- Symmetric Key.
- Public Key.