Lecture Notes Flashcards

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/161

flashcard set

Earn XP

Description and Tags

Flashcards based on lecture notes covering various computer science concepts.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

162 Terms

1
New cards

Who is the Alonzo character named after?

Alonzo Church, a major contributor to early computer science.

2
New cards

What is a Sprite in the context of this lecture?

An actor on the stage who knows how to do many different things, such as walk around the stage and speak the lines of the play.

3
New cards

What are Costumes in relation to sprites?

Pictures that can be 'worn' by a sprite.

4
New cards

Define 'Transparency of an image'.

How much you can see what's behind it.

5
New cards

What is the 'Ghost effect'?

An effect that sets different levels of transparency for a sprite.

6
New cards

Define 'List'.

An ordered sequence of items.

7
New cards

What is a 'String'?

A sequence of characters (letters, digits, punctuation, etc.).

8
New cards

Define 'Substring'.

A piece of some existing string.

9
New cards

What does it mean to 'Concatenate strings'?

To make a bigger string by connecting two or more smaller strings.

10
New cards

Define 'Debugging'.

The process of testing, finding problems, and fixing them.

11
New cards

What is a 'Procedure'?

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

12
New cards

Define 'Reporter'.

A type of procedure that has an oval shape and reports a value.

13
New cards

What is a 'Command' in this context?

A type of procedure that has a jigsaw puzzle shape and tells the computer to do something without reporting a value.

14
New cards

Define 'Expression'.

Either a constant value or a call to a reporter block including its inputs.

15
New cards

What is an 'Algorithm'?

A sequence of steps that are usually performed by a computer.

16
New cards

Define 'Pseudocode'.

An algorithm written in human language, used to focus on important ideas instead of programming details.

17
New cards

What is a 'Parameter'?

The input name set in the block definition that never changes.

18
New cards

Define 'Argument'.

The input value given each time the block is run, which can be different each time.

19
New cards

What does 'Input' refer to?

Both parameters (input names) and arguments (input values).

20
New cards

What is the purpose of the 'Pick random () to ()' block in Snap!?

A reporter block in Snap! that selects a random value.

21
New cards

What does the 'Broadcast ()' block do?

A command block in Snap! that sends a message to all sprites.

22
New cards

What is the function of the 'Say ()' block?

A command block in Snap! that makes a sprite display a message.

23
New cards

What does the 'Point in direction ()' block do?

A command block in Snap! that directs a sprite to face a certain direction.

24
New cards

What is the function of the 'Join () ()' block in Snap!?

A block in Snap! that concatenates two strings.

25
New cards

Define 'Iteration'.

Computer scientists describe a repeating program structure as looping, repetition, or iteration.

26
New cards

What is 'Personally identifiable information (PII)'?

PII is information that can let others figure out who you are and possibly get more information like your Social Security number, age, race, phone number(s), medical information, financial information, or biometric data (such as your thumbprint or face scan).

27
New cards

What is an 'Infinite loop'?

When a program keeps running forever, that's called an infinite loop.

28
New cards

Define 'Code segment'.

A code segment is a sequence of connected instructions that carry out a purposeful action.

29
New cards

What is a 'Variable'?

A variable is like a box that can hold one value at a time, such as one word, one costume, or one list (which can contain many things).

30
New cards

Define 'Local Variable'.

A local variable can be set or used only in the environment in which it is defined.

31
New cards

What is a 'Predicate'?

A predicate is a hexagon-shaped reporter that asks a true/false question.

32
New cards

What is a 'Boolean value'?

Predicates report a Boolean value (either true or false).

33
New cards

Why are the if and if-else blocks called 'Conditionals'?

Because they control the code based on a true-or-false condition.

34
New cards

What is a 'Global Variable'?

A global variable is a variable that is usable by all scripts in the program.

35
New cards

What is meant by 'Initializing the variable'?

Setting the starting value of a variable is known as initializing the variable.

36
New cards

Define 'Index'.

The position number is called the index of the item in the list.

37
New cards

What is an 'Element'?

An element is another name for an item in a list.

38
New cards

Define 'Sublist'.

A sublist is a list used as an item of another list.

39
New cards

What is meant by 'Data Types'?

A data type is what kind of data something is (number, text string, list, etc.).

40
New cards

Define 'Abstract Data Types (ADTs)'.

ADTs are things that you, the programmer, create to make your program easier for you and others to read, debug, and improve.

41
New cards

What is an 'Abstract Data Type (ADT)'?

A custom data type that's meaningful to your program, developed as you code, hiding details inside the constructor and selectors.

42
New cards

What is a 'Quiz Item'?

The constructor that constructs one example of the data structure, consisting of question: () and answer: () blocks.

43
New cards

What is 'Data Abstraction'?

The creation and use of abstract data types in a program.

44
New cards

Define 'Table' in this context.

A two-dimensional data structure with rows and columns, implemented as a list of lists in Snap!.

45
New cards

What is 'Composition of Functions'?

Using the result from one function as the input to another function.

46
New cards

Define 'Traversing a List'.

Looking at each item of the list, where 'for each' iterates without using index numbers.

47
New cards

What is the 'Domain' of a function?

The input type of a function, which is the type of data that it accepts as input.

48
New cards

What is the 'Range' of a function?

The output type of a function, which is the type of data that it reports as output.

49
New cards

Define 'Selection' in the context of algorithms.

Deciding which part of an algorithm to run based on whether a condition is true or false.

50
New cards

What is 'Sequencing' in an algorithm?

Following steps in order within an algorithm.

51
New cards

Define 'Iteration' in the context of algorithms.

Repeating a process or set of instructions in an algorithm.

52
New cards

What is a 'Nested Conditional Statement'?

An if or if else statement inside another if else statement.

53
New cards

Define 'String'.

An ordered sequence of characters.

54
New cards

What is meant by 'Index'?

The position of an element in a list or a character in a string.

55
New cards

What is a 'Software Library'?

A collection of procedures that can be used in programs.

56
New cards

What does 'API (Application Program Interface)' stand for?

Documents what a programmer needs to know about using a library, describing each procedure's purpose, inputs, and outputs.

57
New cards

Define 'Web API'.

An API that is specifically designed for web applications.

58
New cards

What are 'Creative Commons' licenses?

A family of copyright licenses that allow others to use, share, maybe sell, and maybe revise your work.

59
New cards

What is 'Free Software'?

Software that anyone can copy, use, modify, and redistribute commercially, with modifications under the same license.

60
New cards

What does 'Open Source Software' generally refer to?

A general term for software whose source code is made available to anyone, with potential restrictions on usage.

61
New cards

What is 'Open Access Scholarly Research'?

Research reports available for free download, not requiring permission from a journal publisher.

62
New cards

Define 'Recursion'.

Calling a procedure from inside itself.

63
New cards

What is 'Procedural Abstraction'?

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

64
New cards

What is a 'Draw Brick Block'?

A procedure with a name related to the problem you are solving.

65
New cards

Describe the beauty of 'Procedural Abstraction'.

Once you've coded and debugged a block, you don't need to think about how it works each time you use it.

66
New cards

What is 'Modularity'?

The process of breaking a problem into smaller pieces and is a form of procedural abstraction.

67
New cards

Define 'Clone' in the context of sprites.

A copy of a sprite that shares information with its parent sprite, including scripts, but changes made to a clone are not shared with the parent.

68
New cards

What is 'Debugging' often described as?

The art of identifying errors in computer programs and fixing them.

69
New cards

What does 'Input' refer to?

Input refers to the empty boxes in a block that get filled with values, as well as information entered into a program by the user.

70
New cards

What is considered 'Output' from a program?

Program output means any data sent from your program to the user or to any device, typically depending on the input.

71
New cards

What is a 'Higher-order Function'?

A higher-order function is a function that takes a function as input or reports a function as output.

72
New cards

What is a 'Sprite Variable'?

A sprite variable is like a global variable in that it doesn't belong to a particular script, but it does belong to a particular sprite.

73
New cards

What loosely defines 'Artificial Intelligence (AI)'?

A field of computer science loosely defined as 'trying to get computers to think.'

74
New cards

What is the 'Internet'?

The Internet is a computer network that uses open protocols to standardize communication.

75
New cards

What is a 'Computing Device'?

A computing device is a physical object that can run a program, such as computers, tablets, cell phones, and smart sensors.

76
New cards

What is a 'Router'?

A router is a computer that passes information from one network to another.

77
New cards

What are 'ISPs (Internet Service Providers)'?

ISPs are the companies who sell Internet access to homes and institutions.

78
New cards

Define 'Bandwidth'.

Bandwidth is the maximum amount of data that can be sent in a fixed amount of time, measured in bits per second.

79
New cards

What does 'Cloud Storage' mean?

Storing data in the cloud means storing it somewhere on the Internet, managed by a cloud service provider.

80
New cards

What is a 'Path'?

A path is a sequence of directly connected computing devices that connect a sender to a receiver.

81
New cards

Define 'Routing'.

Routing is the process of finding a path from sender to receiver.

82
New cards

What is 'Scalability' in the context of the Internet?

Scalability is the ability of the Internet to keep working as it grows.

83
New cards

Define 'Redundancy'.

Redundancy is the inclusion of back-up elements in case one part fails.

84
New cards

What is 'Fault Tolerance'?

Fault tolerance is the ability of a system to work around problems.

85
New cards

Define 'Protocol'.

A protocol is a set of rules that specify the behavior of a system.

86
New cards

What is an 'IP Address'?

An IP address is a unique number assigned to each device on a computer network.

87
New cards

What is a 'Packet'?

A small chunk of any kind of data (text, numbers, lists, etc.) and metadata (information about the data) that is passed through the Internet as a data stream.

88
New cards

Describe 'Packet Switching'.

The Internet sends short bursts of information, not long continuous strings.

89
New cards

What does 'TCP/IP' represent?

A pair of protocols that provide two levels of abstraction.

90
New cards

What is the function of 'IP (Internet Protocol)'?

Lets your computer pretend it has a direct connection to another computer.

91
New cards

What is the function of 'TCP (Transmission Control Protocol)'?

Lets your computer pretend it has a reliable connection to the other computer.

92
New cards

Define 'Encryption'.

The process of encoding data to prevent unauthorized access.

93
New cards

What is 'Decryption'?

The process of decoding the data.

94
New cards

Describe 'Symmetric Encryption'.

Substitution ciphers are examples because they use the same key for both encryption and decryption.

95
New cards

What is 'Public Key Encryption'?

Uses a pair of keys: a public key for encryption and a private key for decryption.

96
New cards

What is 'SSL/TLS'?

The standard used for cryptographically secured information transfer on the Internet.

97
New cards

What are 'Certificate Authorities'?

Organizations that issue digital certificates to verify who owns the encryption keys used for secured communications.

98
New cards

What is 'Malware'?

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

99
New cards

Define 'Keylogging Software'.

A kind of malware that records every key pressed by a user.

100
New cards

What is a 'Computer Virus'?

A type of malware that spreads and infects other computers and can attach themselves to legitimate programs.