Module 1 Flashcards

1
Q

Where do you put non-visible content about the HTML document?

A

This type of content goes in the head element

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

Where do you put visible content about the HTML document?

A

This type of content goes in the body element

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

Where do the head and body tags go in a valid HTML document?

A

These tags go in the html element

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

What is the purpose of a !DOCTYPE declaration?

A

This tag tells you what type of document you are working on and also specifies the specific version

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

Give five examples of HTML element tags.

A

<p> p
</p>

<h1> h1 </h1>

through<h6> h6 </h6>
<img></img> img
<a> a</a>

<div> div </div>

</a>

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

What is the purpose of HTML attributes?

A

these allow you to provide additional information about your html elements by assigning attributes to specific values.

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

Give an example of an HTML entity (escape character).

A

without spaces
© “& copy ;”
® “& reg ;”
€ “& eruo ;”
& “& amp ;”

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

How do block-level elements affect the document flow?

A

These types of elements take up as much space as they can and elements always start on a new line

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

How do inline elements affect the document flow?

A

These types of elements take up as much space as they need and appear adjacent to other elements

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

What are the default width and height of a block-level element?

A

Default width=full width available on the screen
Default height=height of the content

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

What are the default width and height of an inline element?

A

Default width=width of the content *cannot be changed
Default height=height of the content

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

What is the difference between an ordered list and an unordered list in HTML?

A

Unordered lists <ul> are not in a specified order and by default notated with bullet points

Ordered lists </ul><ol> are numbered and in a specified orderer</ol>

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

Is an HTML list a block element or an inline element?

A

This is a block element

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

What HTML tag is used to link to another website?

A

The anchor tag <a></a>

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

What is an absolute URL?

A

The full web address containing domain name

To be used for external links on other sites

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

What is a relative URL?

A

The file path for a file within the same domain, can notate this shorthand in html

To be used for internal links to link files on the same site

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

How do you indicate the relative link to a parent directory?

A

to indicate
a href=”../file-name”>Text Content /a

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

How do you indicate the relative link to a child directory?

A

to indicate
a href=”folder-name/file-name”Text Content/a

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

How do you indicate the relative link to a grand parent directory?

A

a href=”../../file-name”>Text Content/a

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

How do you indicate the relative link to the same directory?

A

to indicate
a href=”file-name”>Text Content/a

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

What is the purpose of an HTML form element?

A

the purpose of this is to allow users to input information on a webpage via a form which is tracked by key value pairs i.e. Name: Hannah (key value pair would be saved as name=name, value=Hannah)

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

Give five examples of form control elements.

A

5 examples are:
1. Text input
2. Password input
3. Radio buttons
4. Checkboxes
5. Submit buttons

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

Give three examples of type attributes for HTML elements.

A

3 examples are:
1. type=”text”
2. type=”password”
3. type=”radio”

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

Is an HTML input element a block element or an inline element?

A

this element is inline

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
What are the six primary HTML elements for creating tables?
1. table 2. thead 3. th 4. tbody 5. tr 6. td
26
What purpose do the thead and tbody elements serve?
These elements signify the heading and body sections of the table to make it clearer for screenreading and also because if the table is longer than the screen, the browser can keep the header visible while you are scrolling down the page
27
Give two examples of data that would lend itself well to being displayed in a table.
1. Financial Reports 2. Pricing plan charts (different types of jelly plans and pricing)
28
What are the names of the individual pieces of a CSS rule?
Selector & Declaration Block (with Properties & Values)
29
In CSS, how do you select elements by their class attribute?
with a .
30
In CSS, how do you select elements by their type?
with the name of the element
31
In CSS, how do you select an element by its id attribute?
with a #
32
Name three different types of values you can use to specify colors in CSS.
1. rgb () 2. #hexcode 3. Name (147 built in to CSS)
33
What CSS properties make up the box model?
1. Margin 2. Border 3. Padding 4. Content
34
Which CSS property pushes boxes away from each other?
margin
35
Which CSS property add space between a box's content and its border?
padding
36
What is a pseudo-class?
a keyword added to a selector the specifies a special state of the selected element(s)
37
What are CSS pseudo-classes useful for?
they allow you to change the style of the element when you interact with the webpage (i.e. hover)
38
Name at least two units of type size in CSS.
pixels percentages ems
39
What CSS property controls the font used for the text inside an element?
font-family
40
What are the four components of "the Cascade".
1. Source Order 2. Inheritance 3. Specificity 4. !important
41
What does the term "source order" mean with respect to CSS?
the order dictating importance on styling when the same elements of the same specificity are being used
42
How is it possible for the styles of an element to be applied to its children as well without an additional CSS rule?
Inheritance - children receive parent styling by default
43
List the three selector types in order of increasing specificity.
1. type selector (p) 2. class selector (p.class) 3. ID selector (p#id) 4. Inline styling (bad practice) 5. !important (bad practice)
44
Why is using !important considered bad practice?
bad practice because it breaks natural cascading and makes debugging more difficult
45
What is the default flex-direction of a flex container?
row
46
What is the default flex-wrap of a flex container?
no wrap
47
Why do two div elements "vertically stack" on one another by default?
because they are block-level elements
48
What is the default flex-direction of an element with display: flex?
row
49
What is the default value for the position property of HTML elements?
position: static
50
How does setting position: relative on an element affect document flow?
position: relative element will going on top of other elements (as they stay statically positioned to where they should have been if that element were not moved)
51
How does setting position: relative on an element affect where it appears on the page?
position: relative will allow that element to move relative to where it normally should have been, going on top of other elements (as they stay statically positioned to where they should have been)
52
How does setting position: absolute on an element affect document flow?
position: absolute makes other elements treat this element as if it does not exist
53
How does setting position: absolute on an element affect where it appears on the page?
position: absolute positions element relative to the parent container
54
How do you constrain an absolutely positioned element to a containing block?
set the container you want to constrain it to a non-static position (position: absolute elements will constrain themselves to the nearest non-static container)
55
What are the four box offset properties?
top bottom right left
56
What is the purpose of variables?
variables store data of a script into a variable for later use that can be changed
57
How do you declare a variable?
using the var keyword (or const or let), variable name, and assignment operator var variableName = 'value';
58
How do you initialize (assign a value to) a variable?
using the assignment operator (=)
59
What characters are allowed in variable names?/What are the rules?
1. Must begin with a letter, $ or _ 2. cannot use a - or . 3. cannot use keywords or reserved words 4. case sensitive 5. Non-mystical variable names 6. capitalize after 1st word
60
What does it mean to say that variable names are "case sensitive"?
variable and Variable are not the same variable
61
What is the purpose of a string?
labelling, adding new content to a page
62
What is the purpose of a number?
for arithmetic operations / calculations
63
What is the purpose of a boolean?
assigning true and false values and acting like an on/off switch to determine which part of the script should run
64
What does the = operator mean in JavaScript?
assignment
65
How do you update the value of a variable?
later in the script, set the variable = to the new value
66
What is the difference between null and undefined?
null is of type object that is non-existent or empty undefined if of type undefined which is automatically assigned a value of undefined since no value is specified
67
Why is it a good habit to include "labels" when you log values to the browser console?
makes the console.log easier to understand and read especially when consoling many things at once
68
Give five examples of JavaScript primitives.
1. String 2. Boolean 3. Number 4. Null 5. Undefined
69
What data type is returned by an arithmetic operation?
Number
70
What is string concatenation?
addition of two strings together with +
71
What purpose(s) does the + plus operator serve in JavaScript?
string concatenation and arithmetic additions
72
What data type is returned by comparing two values (, ===, etc)?
Boolean (true/false)
73
What does the += "plus-equals" operator do?
shorthand for adding variable to a value and assigning the variable equal to that result i.e. variableName += 2 is the same as variableName = variableName +2
74
What are objects used for?
used to group together key value pairs including data and functions that relate back to a real-world object i.e. person -> functions like breathing, eating, sleeping and data like favorite color, name
75
What are object properties?
variables of object
76
Describe object literal notation.
var object = { property1: value 1, property2: value2 };
77
How do you remove a property from an object?
delete keyword
78
What are the two ways to get or update the value of a property?
dot notation or bracket notation dot notation has to be the exact name of the property
79
What are arrays used for?
useful for things where order matters i.e. recipe, shopping list, top 10 favorite movies
80
Describe array literal notation.
var array = [ num1, num2, num3];
81
How are arrays different from "plain" objects?
doesn't have key value pairs, order matters
82
What number represents the first index of an array?
0
83
What is the length property of an array?
property that shows # of items in the array
84
How do you calculate the last index of an array?
array.length - 1
85
What is a function in JavaScript?
a set of statements that performs a task or calculates a value
86
Describe the parts of a function definition.
function keyword, optional function name, optional parameters, opening {, function code block with 0-multiple statements, optional return statement, closing } ; function functionName(num1, num2) = { var addition = num1 + num2 return addition };
87
Describe the parts of a function call.
function name and ( ) with arguments listed inside
88
When comparing them side-by-side, what are the differences between a function call and a function definition?
one defines the function with statements, the other provides the return value of the defined function
89
What is the difference between a parameter and an argument?
function call requires arguments, function definition requires parameters
90
Why are function parameters useful?
allow you to pass arguments in later when you call the function
91
What two effects does a return statement have on the behavior of a function?
stops the code in the function block, anything listed after the return statement will not be read
92
Why do we log things to the console?
to help with debugging & make sure our script is running properly
93
What is a method?
a function that is a property of an object
94
How is a method different from any other function?
method is just attached to an object
95
How do you remove the last element from an array?
.pop()
96
How do you round a number down to the nearest integer?
Math.floor()
97
How do you generate a random number?
Math.random()
98
How do you delete an element from an array?
.pop() - removes the item at the end of the array .shift() - removes the item at beginning of array .splice(start, deleteCount, item1, item2, itemN) ^use the deleteCount - removes at index where you specify (start) and deletes # of items where you specify (deleteCount), replaces with the following items listed
99
How do you append an element to an array?
.push() - adds to the end of an array .unshift() - adds to the beginning of an array .splice(start, deleteCount, item1, item2, itemN)
100
How do you break a string up into an array?
.split()
101
Do string methods change the original string? How would you check if you weren't sure?
No you would console.log the original string to check
102
Roughly how many string methods are there according to the MDN Web docs?
about 35+
103
Is the return value of a function or method useful in every situation?
Not always, sometimes you want to use that return value in another way / to create a better/more useful variable or function
104
Roughly how many array methods are there according to the MDN Web docs?
about 35+
105
What three-letter acronym should you always include in your Google search about a JavaScript method or CSS property?
MDN
106
Give 6 examples of comparison operators.
=== strictly equal !== strictly not equal > greater than >= greater than or equal to < less than <= less than or equal to
107
What data type do comparison expressions evaluate to?
Booleans
108
What is the purpose of an if statement?
if statements evaluate a condition to determine the path the script should take / what to do in a given situation
109
Is else required in order to use an if statement?
No
110
Describe the syntax (structure) of an if statement.
if (condition goes here) { execution/function goes here. }
111
What are the three logical operators?
&& and | | or ! not
112
How do you compare two different expressions in the same condition?
by using a logical operator
113
What is the purpose of a loop?
Loops check a condition if it is true and if so, allow code block to run. The condition is checked again and run again repeatedly until it is false.
114
What is the purpose of a condition expression in a loop?
The condition expression is checked each time the loop is run and will only run if the return value is true
115
What does "iteration" mean in the context of loops?
iteration refers to the number of times you are looping through the loop
116
When does the condition expression of a while loop get evaluated?
during each iteration of the loop while it is still true (will keep going infinitely if the condition is never false)
117
When does the initialization expression of a for loop get evaluated?
only the first time the loop is run
118
When does the condition expression of a for loop get evaluated?
during each iteration of the loop
119
When does the final expression of a for loop get evaluated?
after the code block is executed, at the end of the iteration, before checking the condition for the next iteration
120
Besides a return statement, which exits its entire function block, which keyword exits a loop before its condition expression evaluates to false?
break
121
What does the ++ increment operator do?
increments the counter by 1
122
How do you iterate through the keys of an object?
Using a for in loop for (var key in object) { }
123
What is a "model"?
a model is representation of something in context model is an organized chart/hierarchy of the page in memory called a DOM tree (document object model)
124
Which "document" is being referred to in the phrase Document Object Model?
Document Node (refers to the entire page)
125
What is the word "object" referring to in the phrase Document Object Model?
object refers to collection of the nodes of the DOM tree which are all represented by objects (document nodes and element nodes - document itself is an object as well)
126
What is a DOM Tree?
DOM tree shows the organization/chart of all the page's nodes and those nodes' children that are representative of the HTML elements and content. Not all nodes are elements, but all elements are nodes
127
Give two examples of document methods that retrieve a single element from the DOM.
.querySelector( ) - takes any CSS selector as an argument and gives the first of its type .getElementById( ) - takes an id as an argument will return the only id (as they are unique on the page) .getElementByTagName( )
128
Give one example of a document method that retrieves multiple elements from the DOM at once.
.querySelectorAll( ) - takes any CSS selector .getElementsByClassNames( ) - only takes classes .getElementsByTagNames( ) - only takes element names all will return collection of items in a NodeList
129
Why might you want to assign the return value of a DOM query to a variable?
because you will likely need to use that variable in a function to save time - document needs to query itself and look for those items each time you do a query search. This way it saves the information as a pointer in memory
130
What console method allows you to inspect the properties of a DOM element object?
console.dir( )
131
Why would a tag need to be placed at the bottom of the HTML content instead of at the top?
the HTML content has to be loaded on the page before JavaScript can access it (if we don't, the HTML doesn't exist yet)
132
What does document.querySelector() take as its argument and what does it return?
takes any valid CSS selector as an argument and returns the first of that selector's type
133
What does document.querySelectorAll() take as its argument and what does it return?
takes any valid CSS selector as an argument and returns a NodeList of all of that selector's type
134
What is the purpose of events and event handling?
events are always happening on a webpage when the user is interacting with it, the event handling allows javascript to "listen" for the events and do something about it/create functionality surrounding particular events you are able to change css properties dynamically based on how you handle events for example
135
Are all possible parameters required to use a JavaScript method or function?
No, don't always need to use the event parameter
136
What method of element objects lets you set up a function to be called when a specific type of event occurs?
.addEventListener( )
137
What is a callback function?
the callfunction is a function definition that is passed in as an argument in another function callback function is essentially a function definition that we are handing to another function (function handed to another function that at that point will be called) can be anonymous or named purpose is to give functionality to another function - I want this to happen (the outer defined function) when the addEventListener function happens
138
What object is passed into an event listener callback when the event fires?
the event object who passes in the event object -> the element that we attached it to the $hoverbutton is the one that calls handleMouseOver and the one that passes in event object because it is the origination point of it in below example $hoverbutton.addEventListener('mouseover', handleMouseOver);
139
What is the event.target? If you weren't sure, how would you check? Where could you get more information about it?
target property of the event object dispatches the event, the element which triggers the event, point of interaction by the user. check by console.dir( ) more info on MDN
140
What is the difference between these two snippets of code? element.addEventListener('click', handleClick) element.addEventListener('click', handleClick())
the first includes handleClick as part of a callback function within the addEventListener function the second passes in the return value of the handleClick function into the addEventListener function as an argument you will NEVER pass a function being called in .addEventListener( ), will be using callback functions
141
What is the className property of element objects?
property that allows us to access or set the value of the class for that element deletes all previous classes listed in the element and replaces with what it set -> REMEDY: .classList, has its own methods to add, remove, toggle, and replace classes
142
How do you update the CSS class attribute of an element using JavaScript?
set className property to whatever value you want it to be with the assignment operator getter or setter = a property that can serve 2 different functions 1. allows you to access className property & setter is activated when you assign it to a value i.e. $hotbutton.classList.add('cold');
143
What is the textContent property of element objects?
property that allows you to update the text content of the element that you are working with
144
How do you update the text within an element using JavaScript?
TextContent property to whatever value you want it to be with the assignment operator getter or setter = a property that can serve 2 different functions 1. allows you to access className property & setter is activated when you assign it to a value
145
Is the event parameter of an event listener callback always useful?
No, not always the event argument is always passed in, but you do not always have to use your parameters
146
Would this assignment be simpler or more complicated if we didn't use a variable to keep track of the number of clicks?
More complicated There would be nothing to track the click number to isolate the amount of clicks so you would have to would require taking that data from the DOM, taking the string, trimming it away so we are actually getting the number of clicks, doing something with that number (converting it into a number), increment that value and use it to display and make some determination based on it we would have to RELY on the info in the DOM (which we don't want to do)
147
Why is storing information about a program in variables better than only storing it in the DOM?
DO NOT WANT TO RELY ON THE DOM (if something can go wrong in 0.00001% of the time, it is too much in programming) lean towards as much certainty as we can get So you can reuse it in other cases adds a layer of complexity would make us dependent on info stored in the DOM for JavaScript functionality we're setting the DOM info, not depending on it
148
What does the transform property do?
transform lets you rotate, scale, skeew, or translate an element
149
Give four examples of CSS transform functions.
rotate( ) translateY( ) scale( ) skew ( )
150
The transition property is shorthand for which four CSS properties?
transition-property transition-duration transition-timing-function transition-transition-delay
151
What event is fired when a user places their cursor in a form control?
focus
152
What event is fired when a user's cursor leaves a form control?
blur
153
What event is fired as a user changes the value of a form control?
input event
154
What event is fired when a user clicks the "submit" button within a ?
submit event
155
What does the event.preventDefault() method do?
prevents the page from reloading / keeps the data instead of throwing it away will be using this as a standard to take the data before sending it somewhere
156
What does submitting a form without event.preventDefault() do?
refreshes the page and throws the data away
157
What property of a form element object contains all of the form's controls.
form.elements name attribute & id
158
What property of a form control object gets and sets its value?
.value $contactForm.elements.message.value works the same as textContent, can assign it to something
159
Give two examples of media features that you can query in an @media rule.
min-width max-width height & more!
160
Which HTML meta tag is used in mobile-responsive web pages?
viewport meta tag
161
Does the document.createElement() method insert a new element into the page?
No
162
How do you add an element as a child to another element?
.appendChild( )
163
What do you pass as the arguments to the element.setAttribute() method?
attribute name and value
164
What steps do you need to take in order to insert a new element into the page?
Create it and then append it
165
What is the textContent property of an element object for?
setter and getter assignment operator to set the value of the text content or without the assignment to get value of the text content
166
Name two ways to set the class attribute of a DOM element.
.setAttribute( ) .ClassName property
167
What are two advantages of defining a function to create something (like the work of creating a DOM tree)?
Can pass in values automatically with a loop Fulfills separation of concerns (void functions vs return functions) - not appending to the DOM in functions Can add it to an event listener
168
What is the event.target?
the element that the user interacted with
169
Why is it possible to listen for events on one element that actually happen its descendent elements?
because of event flow connecting parent elements to their children
170
What DOM element property tells you what type of element it is?
.tagName make sure you search in all CAPS
171
What does the element.closest() method take as its argument and what does it return?
The closest( ) method traverses the Element and its parents (heading toward the document root) until it finds a node that matches the provided selector string. Will return itself or the matching ancestor. If no such element exists, it returns null. selectors, returns itself or matching ancestor, or if nothing then null
172
How can you remove an element from the DOM?
.remove( )
173
If you wanted to insert new clickable DOM elements into the page using JavaScript, how could you avoid adding an event listener to every new element individually?
add all the new elements first use event delegation by querying the parent div that the new elements are under add a click eventListener on the parent element and add functionality that checks for the event if it is event.target and the closest ancestor element that matches the class name of the new element
174
What is the event.target?
the element you are working with / the element at which the event took place point of interaction
175
What is the affect of setting an element to display: none?
makes the element invisible removes it from the whole flow of the document visibility hidden does NOT interrupt the flow of the document
176
What does the element.matches() method take as an argument and what does it return?
argument is a string value, returns a boolean
177
How can you retrieve the value of an element's attribute?
.getAttribute( )
178
At what steps of the solution would it be helpful to log things to the console?
All of the steps
179
If you were to add another tab and view to your HTML, but you didn't use event delegation, how would your JavaScript code be written instead?
could have a bunch of if else statements and use single events for each one (not as clean)
180
If you didn't use a loop to conditionally show or hide the views in the page, how would your JavaScript code be written instead?
you would have to use a bunch of conditional statements
181
What is a breakpoint in responsive Web design?
points at which you use a media query is introduced that otherwise overrides the normal flow visually a shift and something breaks when a media query is fired
182
What is the advantage of using a percentage (e.g. 50%) width instead of a fixed (e.g. px) width for a "column" class in a responsive layout?
% are relative to the users browser or screen will maintain that percentage of its container all the time across device sizes & you do not have to calculate anything 99% of column classes will use this
183
If you introduce CSS rules for a smaller min-width after the styles for a larger min-width in your style sheet, the CSS rules for the smaller min-width will "win". Why is that?
Source order: (code reads) top to bottom - last media query we have will be the one that fires and overrides
184
What is JSON?
a standard of encoding data so that it can be encoded in another system. An example would be a Javascript object that is converted into a string so that you can transmit the data over to another server JSON is an extremely common data interchange format used to send and store information in computer systems. string format to store data
185
What are serialization and deserialization?
serialization is converting an object in memory into a stream of bytes (string) so you can store it on a disk or send it over a network deserialization is converting a stream of bytes (string) into an object in memory
186
Why are serialization and deserialization useful?
Because you can send it over a network or store bytes on a disk (hard drive, CD, DVD where data will be burned to it)
187
How do you serialize a data structure into a JSON string using JavaScript?
JSON.stringify( )
188
How do you deserialize a JSON string into a data structure using JavaScript?
JSON.parse( )
189
How to you store data in localStorage?
localStorage.setItem(keyName, keyValue);
190
How to you retrieve data from localStorage?
localStorage.getItem(keyName);
191
What data type can localStorage save in the browser?
JSON string value
192
When does the 'beforeunload' event fire on the window object?
Right before before the page refreshes, before the data is wiped
193
How to you store data in localStorage?
localStorage.setItem( 'keyname', 'key value')
194
How to you retrieve data from localStorage?
localStorage.getItem('keyname')
195
What data type can localStorage save in the browser?
Strings (DOM string = javascript strings aka serialization)
196
When does the 'beforeunload' event fire on the window object?
before the page is refreshed or closed when the window is getting torn down by the browser
197
What is a method?
A method is a function which is a property of an object.
198
How can you tell the difference between a method definition and a method call?
methods are defined within the object literal in a series of function definitions, a method is called as a property of the object called when optional parameters are included in the parenthesis
199
Describe method definition syntax (structure).
methods are defined in the object literal using a method name : function (parameters) { code block for function definition }
200
Describe method call syntax (structure).
object.methodName(parameters);
201
How is a method different from any other function?
it is attached to an object and must be called as a method of the object that describes the behavior of the object (property of the object)
202
What is the defining characteristic of Object-Oriented Programming?
Objects contain both data (properties) and behavior (methods)
203
What are the four "principles" of Object-Oriented Programming?
1. Abstraction 2. Encapsulation 3. Inheritance 4. Polymorphism
204
What is "abstraction"?
the most important part of the term "abstraction" boils down to being able to work with (possibly) complex things in simple ways.
205
What does API stand for?
application programming interface
206
What is the purpose of an API?
the purpose of every software API is to give programmers a way to interact with a system in a simplified, consistent fashion: aka, an abstraction