- A framework has libraries preinstalled and is in charge of the flow of the application. When using a library the developer dictates the flow of execution for the app.
- It is more efficient, uses less code and lets us design UI mechanics while laying out the basic XML. Using vanilla JS this is a 2-3 step process and using a framework we can boil it down to 1-2 steps to get functionality working.
- A component is a reusable piece of code. It can take the form of a function or a class and can be used multiple times throughout an application.
- JSX is the new syntax we will be using for react and other frameworks. It is a blend of HTML and JS with optional CSS applications as well. It allows the developer to write both the elements and their functionality at the same time and within the same document.
- Props are the equivalent to arguments or parameters when comparing to vanilla JS. Short for properties, props are used to pass in external information into a component. The rule with props is that their values can be used but should not be changed when using react.
- A state is a value within a class component that allows the user to rerender an object dynamically based on a change in state. Using something with changing data such as a game board or a ticking clock would be examples of when a developer may employ a 'state'.
- Data down Actions Up is a principle that says if you have an existing dataset that needs to be modified. It is best practice to create functionality that will modify the data for the specific application without mutating the original datasets themselves. This improves reusability for pieces of code and makes the code more component based and more clean.