Fundamentals Flashcards

1
Q

Expression

A

A unit of code that can be evaluated into one value

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Statement

A

A unit of code that is used to execute a change

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Variable

A

A name that is a reference to a specific place in memory, and the value stored there. Variables can be assigned and reassigned values.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Literal

A

A value that is the value itself.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

None

A

Represents the concept of no value, or the absence of a value.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Tuple

A

An ordered, unchangeable collection of items.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Set, frozenset

A

An unordered collection. Cannot access values with index or key; must use a loop.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

bytes, bytearray

A

A collection of binary digits (bits).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Conditional Expression

A

An expression that evaluates to either truthy or falsy, typically used in order to determine if a conditional requirement is met. Usually used with if statements.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Software

A

Software is a collection of instructions for a computer to execute

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Application

A

Software designed for an end-user

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Source Code

A

Code that builds software and is readable to a human

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Open Source (OSS)

A

Source code that is available to view and use

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Local Machine

A

Your own very computer in front of you

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

RAM

A

RAM is considered “random access” because you can access any memory cell directly if you know the row and column that intersect at that cell.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

SAM

A

The opposite of RAM is sequential access memory (SAM). SAM stores data as a series of memory cells that can only be accessed sequentially (like a cassette tape).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

interface

A

A medium that takes information from one source, and passes it to another source.The interface usually makes a meaningful translation between the two sources.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

root directory

A

The nickname of the top-most folder that exists on the machine. This folder can contain folders important to the whole system, including folders and files and programs needed to start, sleep, or run a computer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

shell

A

A shell is a program that runs commands. It is the program that works between the command line and the computer’s operating system, and runs our programs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

home directory

A

“Home directory” is the nickname of the user folder on a computer, contains important system-wide configuration files for certain programs, by default in macOS, has folders such as “Documents,” “Pictures,” “Application,” “Desktop”.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

CPU

A

At the heart of a computer is the CPU, or Central Processing Unit.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Storage

A

Storage where data can be kept for the long-term. A common example of this is a hard disk drive in a computer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Pseudocode

A

An informal code style intended to give explanation and meaning.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Syntax Error

A

An error caused by incorrect syntax that Python cannot interpret

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Runtime Error

A

An error raised during runtime

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Logical Error

A

An error caused by incorrect logic

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Stack Trace

A

A report of the active stack frames at a certain point in time during the execution of a program. Reports error messages and details about that error

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

Debugging

A

The process of identifying and removing errors from computer hardware or software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Rubber Ducking

A

Method of debugging code. It describes the idea that sometimes the best way to debug code is to talk things through out loud, and that sometimes talking out loud to a rubber duck will do.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Function

A

Lines of code (1 or more) that are related, grouped together, and named. Once defined, these lines of code are reusable and can be called over and over again.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

Invoking a function

A

“Invoking a function”(call a function) means “make the lines of code inside of a function definition happen now.” We can invoke a function any number of times (even infinitely!)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

Function definition

A

How a function gets defined before it gets invoked. Function def, where the function is defined, a function you wrote.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

Single Responsibility Principle

A

The Single Responsibility Principle (SRP) states that a function should have one, and only one primary responsibility. This is to say, when developers describe the purpose of a function, ideally, the function isn’t trying to do more than one thing.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

Argument

A

An argument is a piece of data delivered to a function when it’s being invoked.

35
Q

Return value

A

A return value is the piece of data that a function delivers to the code that invoked the function.

36
Q

Function Signature

A

A piece of syntax. A part of the function definition that determines function name and the parameter list

37
Q

Parameter

A

The name of an expected argument for this function. This parameter name is the name of the local variable that will hold an argument value. Parameters and arguments at the time of function call are mapped positionally.

38
Q

variable scope

A

The rules in programming about how we can access those variables in code is called variable scope.

39
Q

Object Identity

A

An object’s unique identity that never changes once it’s been created. Usually a number. Similar to an object’s address in memory. Find this with id(obj). In a comparison that uses is, Python compares object IDs.

40
Q

Mutability

A

Mutability means an object’s ability to change. An object of an immutable data type cannot be changed. An object of a mutable data type can be changed, modified, altered, in other words “mutated.”

41
Q

Documentation

A

Any written text, illustrations or video that describe a software or program to its users

42
Q

API

A

A set of rules and tools that allows software to communicate with other software. Specifically designed to allow access to a wide audience.

43
Q

Package

A

A package is a collection of Python modules that are related to each other

44
Q

Relase

A

A distribution of a new version of a package

45
Q

Version

A

A state of software, with its code and dependencies at a specific time. Usually identified with numbers

46
Q

Automated Test

A

Scripts that test specific code for correct functionality

47
Q

Unit Test

A

Scripts designed to test the performance of a single function

48
Q

Assertion

A

A statement that somethng is true

49
Q

Assert

A

Stating that something is true

50
Q

JSON

A

a lightweight data-interchange format that can hold objects, arrays, strings, numbers, booleans, and other formats. Intentionally language-independent.

51
Q

for loop

A

A kind of loop that will loop over every element in something iterable, such as a list.

52
Q

break

A

A keyword that will exit an entire loop

53
Q

continue

A

A keyword that will immediately advance one interation in a loop

54
Q

range()

A

A Python function that creates a sequence

55
Q

.items()

A

.items() is a method that dictionaries have. It returns a view of the dictionary, or a version of the dictionary’s key-value pairs that are iterable.

56
Q

Two-dimensional arrays

A

A list where each element is a list. This often implies that all inner lists have the same length. When all inner lists have the same length, a two-dimensional array can resemble a grid, as the structure mimics rows and columns.

57
Q

Nested loop

A

A loop that runs inside of another loop

58
Q

Infinite loop

A

A loop that runs and never terminates or ends. This leads to a program freezing or getting stuck doing the same thing forever.

59
Q

Counter variable

A

A variable solely used to represent a number that increments or decrements. Usually, counter variables are used to count loop iterations. It needs to be initialized outside of the loop. This is an informal, casual label!

60
Q

Exception

A

An event or error that may cause your program to stop if not properly handled.

61
Q

catching an exception

A

Code that recognizes a thrown exception is often called catching an exception.

62
Q

handling an exception

A

Catching an exception and then handling the situation, setting things back in order, and making it possible to move on, is also often called handling an exception.

63
Q

Algorithm

A

A specific process, set of rules, or solution to be followed when problem-solving

64
Q

Efficient

A

A quality of code that means it is fast, and/or it does not take up much memory

65
Q

Time Complexity

A

A measurement of how the amount of time an algorithm takes to run as the size of the input changes

66
Q

Space Complexity

A

A measurement of how much memory an algorithm uses as the size of the input changes

67
Q

Big O

A

A notation to describe how the run time or space requirements grow as the input size grows

68
Q

Reference

A

A value which enables a program to directly access a datum (a piece of data).

69
Q

Contiguous

A

Things that are directly next to one another. In many languages data in an array is stored in contiguous chunks.

70
Q

Side Effect

A

Any lasting effect that occurs in a function, which is not through its return value.

71
Q

Mutable data type

A

Any type of variable which can be modified without changing the reference.

72
Q

Debugger

A

A program that assists in detection and fixing of errors in code. It is often integrated into an editor

73
Q

Breakpoint

A

In programming a breakpoint is an intentional pausing place in a program usually for the purpose of debugging.

74
Q

Watch

A

Any item of data or expression a developer wants to observe when debugging.
“I created a watch to see the value of items[i] as the loop executed.”

75
Q

Stepping Over

A

Over Executing a function call on the current line and pausing on the line after the function call. Essentially skipping over the called function in the debugger.
“I know the sum function isn’t the problem so I stepped over that function.”

76
Q

Stepping Into

A

While running a debugger, entering a function call on the current line of execution and pausing execution on the 1st line of the function.
“I needed to see what that average_rating function did, so I stepped into it.”

77
Q

Version Control System

A

A tool that records changes to a file or set of files over time as versions

78
Q

Repository

A

A directory that stores project files

79
Q

Git

A

Git is the name of the version control system we will use. Git is a tool, and we’ll primarily use this tool in the command line or using an IDE.

80
Q

GitHub

A

GitHub is a service that can host our codebases. GitHub’s hosting service is made for programmers who use Git in their projects. The primary way we interact with GitHub is through github.com.

81
Q

local changes area

A

The local changes area is for new code changes that only exist on this local machine. It’s the first area that code changes go to.

82
Q

staging area

A

The staging area is for code changes that a developer indicates should go into the next commit.

83
Q

Remote repository

A

A common repository that all team members use to exchange their changes