APCSP Vocab (5/8/23)

studied byStudied by 3 people
0.0(0)
Get a hint
Hint

algorithm

1 / 161

encourage image

There's no tags or description

Looks like no one added any tags here yet for you.

162 Terms

1

algorithm

sequence of steps that are usually performed by a computer

New cards
2

procedure

named sequence of instructions that may take inputs and may report a value

New cards
3

expression

  • either:

    • a constant value, or

    • a call to a reporter block w/ input slots filled in

  • evaluated to produce a single value

New cards
4

value

can be anything (ex. number, string, sprite, costume, script, list)

New cards
5

abstraction

gives a name to something in a program

New cards
6

procedural abstraction

use of a procedure (block) to name an idea

process of developing a program by breaking up a large problem into smaller sub-problems

New cards
7

abstraction by generalization

writing a single block for similar cases of code, by using an input to distinguish them

New cards
8

data abstraction

giving names to numbers, text, lists, etc

New cards
9

function composition

using the result from one reporter as the input to another reporter

New cards
10

list

ordered set of items

New cards
11

concatenate strings

make a bigger string by connecting 2+ smaller ones

New cards
12

index

the position number of an item in a list

New cards
13

element

an item in a list

New cards
14

traversing a list

going through each item of a list

New cards
15
<p>predict the ouputs:</p>

predict the ouputs:

  • [French, Spanish, German, Latin, Chinese]

  • “Art I”

  • “Programming for Business”

  • “2”

  • [Jazz Band, Orchestra, Band]

  • [Art I, Art II, Crafts] Wood Shop [Computer Repair, Programming for Business] Metal Shop [Orchestra, Band] Choir

  • [Art II, Crafts]

  • [Band]

  • “7”

  • “5”

New cards
16

debugging

process of testing, finding problems, and fixing them

New cards
17

iteration (loop)

repeating program structure

New cards
18

conditionals

control the code based on a condition (ex. if-else)

New cards
19

selection

deciding (selecting) which part of an algorithm to run based on a condition

New cards
20

sequencing

process of ordering code

New cards
21

code segment

sequence of connected instructions that carry out a purposeful action

New cards
22

predicate

asks a question where the answer is true or false

New cards
23

relational operators

predicates that compare two values

ex. equals, greater/less than

New cards
24

Boolean

a result that can only be true or false

New cards
25

Boolean/logical functions

predicates that have both domain and range as Booleans

  • AND

    • true AND true = true

  • OR (exclusive)

    • true OR true = true

    • true OR false = true

  • NOT

    • NOT false = true

    • reports opposite of input

New cards
26

Personally identifiable information (PII)

info that might make it possible for someone to figure out who you are

ex. Social Security number, age, race, phone number, medical info, financial info, biometric data (thumbprint, face scan)

New cards
27

local variable

can be set or used only in the environment in which it is defined

ex. inputs to procedures, variables created by “for” loops or “script variables”

New cards
28

global variable

usable by all scripts in the program

New cards
29

data type

classification of data, especially as an input to a procedure

ex. number, list

New cards
30

abstract data type (ADT)

type of abstraction that creates custom data types by using constructors and selectors

New cards
31

data abstraction

the creation and use of abstract data types in a program

New cards
32

“keep” block

takes a list and a predicate as input, and reports a new list keeping only the items from the input list that make the condition described by the predicate true

New cards
33

mod

reports the remainder when the first input is divided by the second

ex. 17 mod 5 = 2

New cards
34

software library

a collection of procedures that can be used in programs

New cards
35

application program interface (API)

documents what a programmer needs to know about using a library

a description of each procedure's purpose, inputs, and outputs (but not its algorithms)

New cards
36

copyright law

makes it illegal for anyone to make copies of a work w/out author’s permission

New cards
37

copyright violation vs. plagiarism

  • copyright violation - illegally copying someone’s work but giving credit

  • plagiarism - copying work not protected by copyright and pretending it’s yours

New cards
38

3 legal uses of Fair Use

  • quote a short excerpt for purposes of reviewing the original

  • copy newspaper articles for teaching a class if:

    • the event reported in the article was not anticipated when you planned your class

    • you don't keep using the same article year after year

  • produce a parody

New cards
39

Creative Commons

a specific copyright license that allows others to use, share, and revise your work

New cards
40

3 options similar to Creative Commons

  • Free software - anyone can copy, use, modify, redistribute

  • Open source software - a program’s code is put online, but author may restrict how people use the program

  • Open access - scholarly research reports are available for free download, no permission needed

New cards
41

Creative Commons Licenses

knowt flashcard image
New cards
42

Digital Rights Management (DRM)

allows publishers to have copyright protection during the time when a work is most popular using encryption

New cards
43

Digital Millennium Copyright Act (DMCA 1998)

  • make it illegal to:

    • circumvent (get around) anti-piracy procedures that protect copyrighted works

    • make/sell devices that crack code in order to illegally copy software

  • **does infringe on free speech: discussing security online

New cards
44

Digital Divde

  • the gap between people who have access to communications technology (computers, Internet, online access) and those who don't

  • unequal access to computers and the Internet based on poverty, race, sex, age, geography, etc

New cards
45

recursion

calling a procedure from inside itself

using a procedure in its own definition

New cards
46

clone

a copy of a sprite that shares info with its parent sprite (the original)

New cards
47

event-driven programming

type of program structure where a script only runs briefly when the user clicks a button (an event), to do whatever action the button requires

New cards
48

modularity

the process of breaking a programming project up into separate sub-problems

New cards
49

higher-order function

a function that takes a function as input (or reports a function as output)

New cards
50

Artificial Intelligence (AI)

a field of computer science loosely defined as "trying to get computers to think”

New cards
51

outsourcing

paying other companies to perform tasks or provide services at a lower price than it costs to hire employees to do them

New cards
52

Internet

a computer network that uses open protocols to standardize communication; a network of independent but connected computing devices spread out all over the world

New cards
53

computer network

an interconnected computing system that is capable of sending or receiving data

New cards
54

computing system

a group of computing devices and programs working together for a common purpose

New cards
55

computing device

a physical object that can run a program (ex. computers, tablets, cell phones, smart sensors)

New cards
56

World Wide Web (WWW)

a system of linked pages, programs, and files that uses the Internet

New cards
57

scalability

ability of the Internet to keep working as it grows due to its redundancy

New cards
58

fault-tolerance

ability of a system to work around problems due to its redundancy

New cards
59

redundancy

inclusion of back-up elements in case one part fails

**physical connections have multiple pathways

New cards
60

open protocols

abstraction that standardizes communications in order to transmit data

New cards
61

routing

process of finding a path from sender to receiver

New cards
62

router

a computer that passes information from one network to another

New cards
63

path

a sequence of directly connected computing devices that connect a sender to a receiver

New cards
64

Internet Service Provider (ISP)

companies that sell Internet access to homes/buildings

New cards
65

web browser

the app used to access web pages (ex. google chrome, safari)

New cards
66

Uniform Resource Locator (URL)

web address

New cards
67

HTML (HyperText Markup Language)

language used to instruct a web browser on web page formatting

New cards
68

HTTP (HyperText Transfer Protocol)

language used by a web browser to interpret HTML instructions

New cards
69

search index

a database of info used for doing a search

New cards
70

bandwidth

maximum amount of data that can be sent in a given period of time

**high bandwidth = data travels quickly

New cards
71

the cloud

  • “computer farms” where tens of thousands of computers work together on a problem

  • storing data in the cloud = storing it somewhere on the Internet, but you don't know where

New cards
72

protocol

a set of rules that specify the behavior of a system; communication standards that allow different types of devices to interact

New cards
73

IP (Internet Protocol)

  • specifies how a router should handle a request for different IP addresses

  • lets your computer pretend it has a direct connection to another computer

New cards
74

TCP (Transmission Control Protocol)

  • manages the sending and receiving of all data as packets

  • resends lost or damaged packages + specifies the order for reassembling data once all packets are received

  • lets a computer pretend it has a reliable connection to the other computer

New cards
75

packet

small chunk of data and metadata

New cards
76

packet switching

the Internet sends short bursts of info, not long, continuous strings

New cards
77

Internet Abstraction Hierarchy

  • Application Layer Protocols - manage the interpretation and display of data

    • ex. HTTP

  • Transport Layer Protocols - manage the breakdown and reconstruction of data

    • ex. TCP

  • Internet Layer Protocols - manage the pathways that packets travel across

    • ex. IP

  • Network Interface Hardware - manage the connection between an Internet device and its local network

    • ex. cable, radio antenna

New cards
78

**brief overview of how the Internet works

  • When you enter a URL to see a web page:

  • Your computer sends a request using the language of HTTP. This data is broken down by TCP (Transmission Control Protocol) into packets (small chunks). The packets each “know” two IP addresses: their sender and their receiver.

  • Routers (computers located at intersection points of the pathways) run IP (Internet Protocol) that directs them in transmitting packages to the receiving IP address. If one part of a network fails, IP makes a router send the package through a working path. Because the Internet is a network of networks with many paths, its redundancy allows it to be able to work around problems (fault-tolerant).

  • Because packets may be sent through different pathways, they may arrive out of order, and some might have become lost. The TCP of the receiving computer takes inventory of what packages have arrived or have not. If there are missing packages, TCP orders them to be resent. Only when all of the packages have arrived will TCP re-arrange them in their proper order.

  • The receiving computer/server sends back instructions for making the web page in HTTP. When your computer receives this HTTP, your browser can then use the HTTP to access the HTML web page. HTML directs the display of the web page (how it looks on the screen).

New cards
79

DNS (Domain Name System)

protocol for translating domain names to IP addresses

New cards
80

domain name

human-readable way of locating an Internet site

<p>human-readable way of locating an Internet site</p>
New cards
81

IP address

machine-readable way of locating an Internet site

New cards
82

DNS hierarchy

simplifies the process of finding the computer with the desired domain name

**separate servers for finding domains = every server doesn’t need to know every domain

New cards
83

root domain

  • category code

    • .gov, .edu, .com, .org

  • country code

New cards
84

primary domain

main address for a site; the last 2 segments of a domain name (ex. berkeley.edu)

New cards
85

subdomains

subsections of primary domains or of other subdomains

  • snap.berkeley.edu is a subdomain of berkeley.edu

  • store.parks.ca.gov is a subdomain of ca.gov

New cards
86

ICANN (Internet Corporation for Assigned Names and Numbers)

independent organization that controls the DNS hierarchy + allocation of IP addresses

**Until 2009, ICANN was completely under US control

New cards
87

open standards

can be used by anyone to make new hardware or software w/out permission

**protocols are open standards

New cards
88

IETF (Internet Engineering Task Force)

  • organization that develops and approves new or changing protocols

  • by email, anyone with the necessary expertise can join

  • decisions made by unanmous consensus

New cards
89

ISOC (Internet Society)

worldwide, free, nonprofit membership society that’s officially in charge of the IETF

New cards
90

encryption

the process of encoding data to prevent unauthorized access

New cards
91

symmetric encryption

uses the same key for both encryption and decryption

the encryption key itself is a message that must be sent safetly

New cards
92

substitution cipher

symmetric encryption where each letter of the alphabet is substituted with some other letter

ex. Caesar Cipher

New cards
93

public key (asymmetric) encryption

uses a pair of keys: public key for encryption, private key for decryption

**sharing the public key doesn't give away the private key

<p>uses a pair of keys: public key for encryption, private key for decryption</p><p>**sharing the public key doesn&apos;t give away the private key</p>
New cards
94

secure HTTP connections

https:// instead of http://

New cards
95

SSL (Secure Sockets Layer)

TLS (Transport Layer Security)

protocols used to transfer encrypted info on the Internet

  • The site you are visiting sends your browser its public key

  • Your browser uses it to encrypt the info

New cards
96

Certificate Authorities

  • organizations that issue digital certificates to verify who owns the encryption keys

    • trusted third parties that certify owners of public keys

  • they ask you questions for which they hope only you know the answer

New cards
97

malware

software that was designed to harm or take partial control over your computer

New cards
98

keylogging software

malware that records every key pressed by a user

New cards
99

virus

malware that spreads and infects other computers

New cards
100

anti-virus/malware software

scans your files and Internet transmissions looking for malware

New cards

Explore top notes

note Note
studied byStudied by 28 people
... ago
5.0(1)
note Note
studied byStudied by 33 people
... ago
5.0(1)
note Note
studied byStudied by 5 people
... ago
5.0(1)
note Note
studied byStudied by 12 people
... ago
5.0(1)
note Note
studied byStudied by 5 people
... ago
4.5(2)
note Note
studied byStudied by 13 people
... ago
5.0(1)
note Note
studied byStudied by 107 people
... ago
5.0(1)
note Note
studied byStudied by 1179 people
... ago
5.0(9)

Explore top flashcards

flashcards Flashcard (150)
studied byStudied by 17 people
... ago
4.0(1)
flashcards Flashcard (114)
studied byStudied by 25 people
... ago
5.0(2)
flashcards Flashcard (66)
studied byStudied by 4 people
... ago
5.0(1)
flashcards Flashcard (39)
studied byStudied by 27 people
... ago
5.0(1)
flashcards Flashcard (44)
studied byStudied by 11 people
... ago
5.0(1)
flashcards Flashcard (45)
studied byStudied by 3 people
... ago
5.0(2)
flashcards Flashcard (102)
studied byStudied by 13 people
... ago
5.0(1)
flashcards Flashcard (20)
studied byStudied by 17 people
... ago
5.0(1)
robot