3. What is
React?
• React is a JavaScript framework
• Used for front end web development
• Think of jQuery, but more structured
• Created and used by Facebook
• Famous for implementing a virtual
dom
4. Timeline of front-end JavaScript frameworks
jQuery*
(2006)
AngularJS
(2010)
React
(2013)
Vue
(2014)
Angular
(2014)
* jQuery is more often considered a library than a
framework
5. Common tasks in front-end development
Data definition, organization, and
storage
Event handlers respond to user
actions
Design and render HTML templates
Resolve URLs
Interact with server(s) through APIs and AJAX
App state
User actions
Template
s
Routing
Data
14. Component
s
Components are functions for user
interfaces
let y = f(x);
Input x Output number
let y = <FancyDiv value={x} />;
Input x Output HTML
Math function:
Component function:
15.
16. Anatomy of a React
component
export default function MyComponent(props) {
return <div>Hello, world! My name is {props.name}</div>;
}
const html = <MyComponent name="aaron" />;
Inputs are passed through a
single argument called
“props”
The function is executed as
if it was an HTML tag
The function
outputs HTML
The component is
just a function
Parameters are passed
in as HTML attributes
17. Component
rendering
• When a component function executes, we say it
“renders”
• Assume components may re-render at any time
Our job is to ensure that
every time the component re-
renders, the correct output is
produced
20. Creating a new React
app
Creating a new React app is simple!
1. Install Node.js
2. Run: npx create-react-app app-name
3. New app created in folder: ./app-name
21. Anatomy of a new React app
public est souvent utilisé pour
contenir le document HTML initial et d'autres
ressources statiques nécessaires à
l'application
App est un composant
de démarrage
index.js lie React
au DOM
package.json configure les
dépendances npm
22. What are
hooks?
useState
useEffect
We will
cover
these today
Built-in hooks:
Hooks: Fonctions spéciales permettant aux
développeurs de se connecter à l'état et
au cycle de vie des composants React.
State: Gère les données dynamiques
d'un composant et détermine son
comportement et son apparence.
Lifecycle: Les événements associés à une
instance de composant React
(création, rendu, destruction, etc.).
23. First React hook:
useState
Purpose:
1. Mémoriser les valeurs en interne lorsque le composant se rend à nouveau
2. Indiquer à React de rendre à nouveau le composant lorsque la valeur change.
Syntax:
const [val, setVal] = useState(100);
The current value A setter function
to change the
The initial
value to
25. useEffect
"useEffect" dans React permet d'effectuer des effets de bord dans les composants
fonctionnels, comme la gestion des abonnements aux données ou des actions
asynchrones, en spécifiant quand ces effets doivent être exécutés.
Syntax:
useEffect(() => {
console.log(`myValue was changed! New value: ${myValue}`);
}, [myValue]);
A list of values such that
changes should trigger this
The code to run when
values change
26. La "Virtual DOM" (DOM virtuel) est une technique utilisée par React pour
améliorer l'efficacité des mises à jour d'interface utilisateur. Elle consiste à
créer une représentation virtuelle de l'arbre DOM existant en mémoire, puis à
la comparer avec la version précédente pour identifier les changements. Ces
changements sont ensuite appliqués de manière sélective à l'arbre DOM réel,
réduisant ainsi le coût des opérations de manipulation du DOM. La "Virtual
DOM" permet d'optimiser les performances des applications React en
minimisant le nombre d'opérations directes sur le DOM, ce qui contribue à
une expérience utilisateur plus réactive.
La Virtual DOM de React : Optimisation des performances
d'interface utilisateur."