Quizlet: Computer Science Vocabulary




Unit 1: The Internet

U1C1
Representing and Transmitting Information


Innovation


Prototype


An improvement of an existing technological product, system, or method of doing something.


A preliminary sketch of an idea or model for something new. It’s the original drawing from which something real might be built or created.


Binary Question

a question to which there are only two possible answers.



Binary Message

a message that can only be one of two possible values.


Bit

A contraction of "Binary Digit". A bit is the single unit of information in a computer, typically represented as a 0 or 1.



https://compsci2014.wikispaces.com/file/view/bitbyte.jpg/373668108/540x270/bitbyte.jpg

Bit rate

(sometimes written bitrate) the number of bits that are conveyed or processed per unit of time. e.g. 8 bits/sec.


Protocol

A set of rules and standards governing the exchange or transmission of data between devices.


Bandwidth

Transmission capacity measure by bit rate


Latency

Time it takes for a bit to travel from its sender to its receiver.


ASCII

ASCII - American Standard Code for Information Interchange. ASCII is the universally recognized raw text format that any computer can understand.


code  (v)

to write code, or to write instructions for a computer.

U1C2
How the Internet Works

Request for Comments (RFC)

A formal document from the Internet Engineering Task Force ( IETF ) that is the result of committee drafting and subsequent review by interested parties. Some RFCs are informational in nature, documents are how standards and protocols are defined and published for all to see on the IETF website.




IP Address

 A number assigned to any item that is connected to the Internet.



Packets

Small chunks of information that have been carefully formed from larger chunks of information.


Router

a computer, device which receives messages travelling across a network and redirects them towards their intended destinations based on the addressing information included with the message.


TCP

Transmission Control Protocol / Internet Protocol. It manages all the sending and receiving of Data Packets, like a dependable mail service.
Most networks combine IP with a higher-level protocol called Transmission Control Protocol (TCP), which establishes a virtual connection between a destination and a source.
Transmission Control Protocol - provides reliable, ordered, and error-checked delivery of a stream of packets on the internet. TCP is tightly linked with IP and usually seen as TCP/IP in writing.
Learn More




DNS

Domain Name Server, System: the Internet's system for converting alphabetic url names into numeric IP addresses.

HTTP

Hypertext Transfer Protocol (HTTP) is the protocol used by the World Wide Web. It describes how messages are formatted and interchanged, and how web servers respond to commands.


Abstraction

Reducing information and detail to focus on essential characteristics.


Server

A computer that awaits and responds to requests for data.


Client

A computer that requests data stored on a server.


Net Neutrality

The principle that all Internet traffic should be treated equally by Internet Service Providers.


Internet Censorship

Internet censorship is the control or suppression of what can be accessed, published, or viewed on the Internet enacted by regulators, or on their own initiative. ... Other areas of censorship include copyrights, defamation, harassment, and obscene material. Support for and opposition to Internet censorship also varies.


Network Surveillance

Computer and network surveillance is the monitoring of computer activity and data stored on a hard drive, or data being transferred over computer networks such as the Internet. The monitoring is often carried out covertly and may be completed by governments, corporations, criminal organizations, or individuals.

Unit 2: Digital Information

U2C1
Encoding and Compressing Complex Information

Heuristic

a problem solving approach (algorithm) to find a satisfactory solution where finding an optimal or exact solution is impractical or impossible.



Image

A type of data used for graphics or pictures.


Metadata

Data that describes other data.
For example, a digital image may include metadata that describe the size of the image, number of colors, or resolution.


Pixel

Short for "picture element" it is the fundamental unit of a digital image, typically a tiny square or dot which contains a single point of color of a larger image.


Hexadecimal Number System

A Base 16 numbering system. A number system consisting of 16 distinct symbols — 0-9 and A-F — which can occur in each place value.


Lossless Compression

A compression scheme in which every bit of the original data can be recovered from the compressed file.


Lossy Compression

A compression scheme in which “useless” or less-than-totally-necessary information is thrown out in order to reduce the size of the data. The eliminated data is unrecoverable.


Abstraction

Removing unnecessary details to focus on the essential characteristics. To break problems up into separate parts which can then be solved separately and recombined to form a complete solution. To focus on and use something based only on what it does and without concern for how that functionality is accomplished.

U2C2: Manipulating and Visualizing Data

Hypothesis:

A proposed explanation for some phenomenon used as the basis for further investigation.


README

A document providing background information about a dataset.


CSV

Abbreviation of "comma-separated values," this is a widely-used format for storing data


Raw data

The original data as it was collected.


Summary table

A table of aggregate information about a dataset (e.g., the average, sum, count of some values).


Summary Table

A table that summarizes information about some larger dataset. It typically consists of performing computations like sums, averages, and counts on higher level groupings of information. The intent is to summarize lots of data into a form that is more useful, and easier to "see".
Pivot Table: The tool used by most spreadsheet programs to create a summary table.


Aggregation

A computation in which rows from a data set are grouped together and used to compute a single value of more significant meaning or measurement. Common aggregations include: Average, Count, Sum, Max, Median, etc.
For example, if some dataset contained information about how many hours of television people watched and included their age, you could "aggregate the data by age" and compute the average hours watched for each age group. You could also "aggregate by hours of TV watched" and compute the average age for each number of hours.

Unit 3: Introduction to Programming

U3C1: Programming Languages and Algorithms

Algorithm:









Low level programming language:

A precise sequence of instructions for processes that can be executed by a computer and are implemented using programming languages. (NOTE: this is the definition from the AP CS Principles framework).


It deals with the computer’s hardware. A programming language that captures only the most primitive operations available to a machine. Anything that a computer can do can be represented with combinations of low level commands.
Examples: Machine Language, Assembly Language,


High level programming language:

A programming language with many commands and features designed to make common tasks easier to program. Any high level functionality is encapsulated as combinations of low level commands.
Ex. C, C++, Fortran, Pascal, Swift, BASIC, Visual Basic,


Iterate

To repeat in order to achieve, or get closer to, a desired goal.


Selection

A generic term for a type of programming statement (usually an if-statement) that uses a Boolean condition to determine, or select, whether or not to run a certain block of statements.


Sequencing

Putting commands in correct order so computers can read the commands.


Turtle Programming

a classic method for learning programming with commands to control movement and drawing of an on-screen robot called a "turtle". The turtle hearkens back to early implementations in which children programmed a physical robot whose dome-like shape was reminiscent of a turtle.


Abstraction

Pulling out specific differences to make one solution work for multiple problems.



Function

A piece of code that you can easily call over and over again.
F(x) function (x)
Ex. The ellipse function and its parameters:
ellipse (200, 300, 350, 275)


Parameter

An extra piece of information that you pass to the function to customize it for a specific need.


Top Down Design

a problem-solving approach (also known as stepwise design) in which you break down a system to gain insight into the sub-systems that make it up.


API

Application Program Interface. A collection of commands, protocols, tools,  made available to a programmer to develop software.


Documentation

a description of the behavior of a command, function, library, API, etc.


Hexadecimal

A base-16 number system that uses sixteen distinct symbols 0-9 and A-F to represent numbers from 0 to 15.


Library

a collection of commands / functions, typically with a shared purpose


Loop

a programming construct that repeats a group of commands.


Iteration

"loop" by another name - the repetition of a statement, process, or procedure.


For Loop

A particular kind of looping construct provided in many languages. Typically, a for loop defines a counting variable that is checked and incremented on each iteration in order to loop a specific number of times.


Abstraction

Pulling out specific differences to make one solution work for multiple problems.

Unit 4: Big Data and Privacy

U4C1: The World of Big Data and Encryption

Moore's Law

Gordon Moore, in 1965, had the observation that computing power roughly doubles every two years.


Big Data

a broad term for datasets so large or complex that traditional idata processing applications are inadequate.
EX. Facebook, Amazon, Google Search,


One-pager

A business/corporate term for a one-page document that summarizes a large issue, topic or plan. The purpose is to distill and highlight the most important pieces of information in a digestible manner so that the reader can be quickly acquainted with the relevant details of the "big picture."


Encryption

A process of encoding messages to keep them secret, so only “authorized” parties can read it.


Decryption

A process that reverses encryption, taking a secret message and reproducing the original plain text.


Cipher










Plaintext
Ciphertext
An algorithm that performs encryption or decryption. In cryptography, a cipher (or cypher) is an algorithm for performing encryption or decryption—a series of well-defined steps that can be followed as a procedure. An alternative, less common term is encipherment. ... When using a cipher the original information is known as plaintext, and the encrypted form as ciphertext.


Caesar’s Cipher

A technique for encryption that shifts the alphabet by some number of characters


Random Substitution Cipher

An encryption technique that maps each letter of the alphabet to randomly chosen other letters of the alphabet.


Cracking Encryption

When you attempt to decode a secret message without knowing all the specifics of the cipher, you are trying to “crack” the encryption.


Vigenère cipher (Vee-zha-nair)

a method of encrypting text by applying a series of Caesar ciphers based on the letters of a keyword.


Computationally Hard

a "hard' problem for a computer is one in which it cannot arrive at a solution in a reasonable amount of time.


Modulo or MOD

A mathematical operation that returns the remainder after integer division. Example: 7 MOD 4 = 3


Asymmetric Encryption

Used in public key encryption, it is a  scheme in which the key to encrypt data is different from the key to decrypt.


Public Key (encryption)

Used prevalently on the web, it allows for secure messages to be sent between parties without having to agree on, or share, a secret key. It uses an asymmetric encryption scheme in which the encryption key is made public, but the decryption key is kept private.


Private Key

Public key encryption is the basis for most secure transactions on the internet. A public key is created in public key encryption cryptography that uses asymmetric-key encryption algorithms. Public keys are used to convert a message into an unreadable format. Decryption is carried out using a different, but matching, private key. Public and private keys are paired to enable secure communication.


Phishing scam

A scam. The act of sending an email to a user falsely claiming to be an established legitimate enterprise in an attempt to scam the user into surrendering private information that will be used for identity theft.
Phishing email will typically direct the user to visit a website where they are asked to update personal information, such as a password, credit card, social security, or bank account numbers, that the legitimate organization already has. The website, however, is bogus and will capture and steal any information the user enters on the page.


DDoS Attack

Distributed Denial of Service. When many computers attack a computer to overload it and it stops responding.


Virus / Anti-Virus

Virus: a piece of code that is capable of copying itself and typically has a detrimental effect, such as corrupting the system or destroying data.
synonyms:
worm, Trojan Horse
"a computer virus"

Antivirus:(of software) designed to detect and destroy computer viruses.


Firewall

Firewall is a generic term to describe 'a barrier against destruction'.  It comes from the building term of a protective wall to prevent the spreading of house fires or engine compartment fires.  In the case of computing, 'firewall' means to have software and/or hardware protecting you from hackers and viruses.

Computing firewalls range from small antivirus software packages to very complex and expensive software + hardware solutions. All the many kinds of computer firewalls offer some kind of safeguard against hackers vandalizing or taking over your computer system.


SSL / TLS  (associated with HTTPS

Transport Layer Security (TLS) and its predecessor, Secure Sockets Layer (SSL), both frequently referred to as "SSL", are cryptographic protocols that provide communications security over a computer network.





UNIT 5: Building Apps

U5C1: Event-Driven Programming

User Interface (UI)

The "User Interface" or UI of an app refers to how a person (user) interacts with the computer or app.
UI Elements or objects, like buttons, images, text boxes, pull down menus, screens and so on.
UI Events or controls, like click, scroll, move mouse, type keyboard key, etc.



Event

An action that causes something to happen.
Ex. Clicking mouse.
Ex. Pressing a key


Event-driven program

a program designed to run blocks of code or functions in response to specified events (e.g. a mouse click)


Event handling

an overarching term for the coding tasks involved in making your app respond to events by triggering functions.
Event listener - a command (onEvent in App Lab) that can be set up to trigger a function when a particular type of event occurs on a particular UI element.
Callback function - a function specified as part of an event listener; it is written by the programmer but called by the system as the result of an event trigger.


Debugging

Finding and fixing problems in your algorithm or program.


User Interface (UI)

The visual elements of an program through which a user controls or communications the application. Often abbreviated UI.


Event-Driven Program

A program designed to run blocks of code or functions in response to specified events (e.g. a mouse clock).


Event Handling

An  overarching term for the coding tasks involved in making a program respond to events by triggering functions.


Variable

In JavaScript (and most programming languages) the most primitive type of memory you can use is called a variable. It's called a variable because it's a piece of memory in which you can change what's stored - its value can vary.
To create a chunk of memory to use in a program you use the var command.
To assign a value to a variable means to store a value in memory; you use the = operator.
Variable re-assignment typically means to change the value of a variable based on its current value.



Expression

Any valid unit of code that resolves to a single value. (Variables can be assigned values that are the result of an expression.)


Data Type

All values in a programming language have a "type" - such as a Number, Boolean, or String - that dictates how the computer will interpret it. For example 7+5 is interpreted differently from "7"+"5"


Variable Scope

dictates what portions of the code can "see" or use a variable, typically derived from where the variable was first created. (See Global v. Local)
  • Global Variable - A variable whose scope is "global" to the program, it can be used and updated by any part of the code. Its global scope is typically derived from the variable being declared (created) outside of any function, object, or method.
  • Local Variable - A variable with local scope is one that can only be seen, used and updated by code within the same scope. Typically this means the variable was declared (created) inside a function -- includes function parameter


String

Any sequence of characters between quotation marks (ex: "hello", "42", "this is a string!").



Concatenate

to link together or join. Typically used when joining together text Strings in programming (e.g. "Hello, "+name)


if Statement

The common programming structure that implements "conditional statements".


Conditionals

Another term for if statements -- statements that only run under certain conditions.


Selection

A generic term for a type of programming statement (usually an if-statement) that uses a Boolean condition to determine, or select, whether or not to run a certain block of statements.


Boolean

A single value of either TRUE or FALSE


Boolean Expression

 in programming, an expression that evaluates to True or False.


Conditionals

Statements that only run under certain conditions.


if-Statement

The common programming structure that implements "conditional statements".


Selection

A generic term for a type of programming statement (usually an if-statement) that uses a Boolean condition to determine, or select, whether or not to run a certain block of statements.

U5C2: Programming with Data Structures

while loop

a programming construct used to repeat a set of commands while a boolean condition is true.


Models and Simulations

a program which replicates or mimics key features of a real world event in order to investigate its behavior without the cost, time, or danger of running an experiment in real life.


List

A generic term for a programming data structure that holds multiple items.


Array

A data structure in JavaScript used to represent a list.


Key event

an event triggered by pressing or releasing a key on the keyboard.
keyup - event type triggered when key is released on the keyboard
keydown - event type triggered when key is pressed down on the keyboard


event.key

Use event.key - from the event parameter of the onEvent callback function - to figure out which key was pressed.


for loop

A typical looping construct designed to make it easy to repeat a section of code using a counter variable. The for loop combines the creation of a variable, a boolean looping condition, and an update to the variable in one statement.






return:

a command used to end execution of a function and resume execution at the point where the function was called.


Return Value

 A value sent back by a function to the place in the code where the function was called form - typically asking for value (e.g. getText(id)) or the result of a calculation or computation of some kind. Most programming languages have many built-in functions that return values, but you can also write your own.


Canvas

a user interface element which acts as a digital canvas, allowing the programmatic drawing and manipulation of geometric figures and images.

AP Exam and Performance Tasks

Post AP - DataBases and using Data in Your Apps






























Computer Science Vocabulary


Create a new flash card set entitled Computer Science Vocabulary

Create flashcards for each computer science word/term and its meaning.

You may choose and include pictures, links, etc to help you better learn these definitions.

No comments:

Post a Comment