Què és React?
React és una biblioteca de JavaScript per a la construcció d'interfícies d'usuari. Va ser desenvolupada per Facebook i és àmpliament utilitzada per crear aplicacions web modernes i dinàmiques. React permet crear components reutilitzables que gestionen el seu propi estat, facilitant la construcció d'aplicacions complexes.
Característiques Clau de React
- Components: React es basa en components, que són blocs de construcció reutilitzables.
- JSX: Una extensió de sintaxi que permet escriure codi HTML dins de JavaScript.
- Virtual DOM: React utilitza un Virtual DOM per millorar el rendiment de les aplicacions.
- Unidirectional Data Flow: El flux de dades en React és unidireccional, el que facilita la gestió de l'estat.
Configuració del Teu Entorn de Desenvolupament
Instal·lació de Node.js i npm
Abans de començar amb React, necessitaràs tenir instal·lats Node.js i npm (Node Package Manager). Pots descarregar-los des de nodejs.org.
Creació d'una Nova Aplicació React
React proporciona una eina anomenada create-react-app que facilita la creació d'una nova aplicació React amb una configuració inicial mínima.
Aquestes comandes crearan una nova aplicació React i la posaran en marxa en un servidor de desenvolupament local.
Estructura d'una Aplicació React
Quan crees una nova aplicació amb create-react-app, obtindràs una estructura de carpetes similar a aquesta:
my-app/ ├── node_modules/ ├── public/ │ ├── index.html │ └── ... ├── src/ │ ├── App.css │ ├── App.js │ ├── App.test.js │ ├── index.css │ ├── index.js │ └── ... ├── .gitignore ├── package.json ├── README.md └── ...
Fitxers Clau
public/index.html: El punt d'entrada de l'aplicació.src/index.js: El punt d'entrada de JavaScript. Aquí és on React renderitza l'aplicació.src/App.js: El component principal de l'aplicació.
El Teu Primer Component React
Un component React és una funció o classe que retorna un element React. A continuació es mostra un exemple d'un component funcional senzill:
import React from 'react';
function HelloWorld() {
return <h1>Hello, World!</h1>;
}
export default HelloWorld;Renderització del Component
Per renderitzar el component HelloWorld, necessitem importar-lo i utilitzar-lo dins del component principal (App.js):
import React from 'react';
import HelloWorld from './HelloWorld';
function App() {
return (
<div className="App">
<HelloWorld />
</div>
);
}
export default App;JSX: JavaScript XML
JSX és una extensió de sintaxi que permet escriure codi HTML dins de JavaScript. És una característica clau de React que fa que el codi sigui més llegible i fàcil d'escriure.
Exemple de JSX
Aquest codi crea un element React que representa un encapçalament <h1> amb el text "Hello, World!".
Exercici Pràctic
Objectiu
Crea un component React que mostri un missatge personalitzat.
Instruccions
- Crea un nou fitxer anomenat
Greeting.jsdins de la carpetasrc. - Defineix un component funcional que accepti una propietat
namei mostri un missatge de benvinguda. - Importa i utilitza el component
Greetingdins deApp.js.
Solució
src/Greeting.js:
import React from 'react';
function Greeting(props) {
return <h1>Hello, {props.name}!</h1>;
}
export default Greeting;src/App.js:
import React from 'react';
import Greeting from './Greeting';
function App() {
return (
<div className="App">
<Greeting name="John" />
</div>
);
}
export default App;Resum
En aquesta secció, hem introduït React, una biblioteca de JavaScript per a la construcció d'interfícies d'usuari. Hem configurat l'entorn de desenvolupament, creat el nostre primer component React i explorat la sintaxi JSX. A més, hem realitzat un exercici pràctic per reforçar els conceptes apresos. En la següent secció, aprofundirem en la gestió de l'estat i els cicles de vida dels components en React.
JavaScript: De Principiant a Avançat
Mòdul 1: Introducció a JavaScript
- Què és JavaScript?
- Configuració del Teu Entorn de Desenvolupament
- El Teu Primer Programa en JavaScript
- Sintaxi i Conceptes Bàsics de JavaScript
- Variables i Tipus de Dades
- Operadors Bàsics
Mòdul 2: Estructures de Control
- Declaracions Condicionals
- Bucles: for, while, do-while
- Declaracions Switch
- Gestió d'Errors amb try-catch
Mòdul 3: Funcions
- Definició i Crida de Funcions
- Expressions de Funció i Funcions Fletxa
- Paràmetres i Valors de Retorn
- Àmbit i Tancaments
- Funcions d'Ordre Superior
Mòdul 4: Objectes i Arrays
- Introducció als Objectes
- Mètodes d'Objecte i Paraula Clau 'this'
- Arrays: Conceptes Bàsics i Mètodes
- Iteració sobre Arrays
- Desestructuració d'Arrays
Mòdul 5: Objectes i Funcions Avançades
- Prototips i Herència
- Classes i Programació Orientada a Objectes
- Mòduls i Importació/Exportació
- JavaScript Asíncron: Callbacks
- Promeses i Async/Await
Mòdul 6: El Model d'Objectes del Document (DOM)
- Introducció al DOM
- Selecció i Manipulació d'Elements del DOM
- Gestió d'Esdeveniments
- Creació i Eliminació d'Elements del DOM
- Gestió i Validació de Formularis
Mòdul 7: APIs del Navegador i Temes Avançats
- Emmagatzematge Local i de Sessió
- Fetch API i AJAX
- WebSockets
- Service Workers i Aplicacions Web Progressives (PWAs)
- Introducció a WebAssembly
Mòdul 8: Proves i Depuració
- Depuració de JavaScript
- Proves Unitàries amb Jest
- Proves d'Integració
- Proves de Cap a Cap amb Cypress
Mòdul 9: Rendiment i Optimització
- Optimització del Rendiment de JavaScript
- Gestió de Memòria
- Manipulació Eficient del DOM
- Càrrega Per Mandat i Divisió de Codi
Mòdul 10: Frameworks i Llibreries de JavaScript
- Introducció a React
- Gestió d'Estat amb Redux
- Conceptes Bàsics de Vue.js
- Conceptes Bàsics d'Angular
- Triar el Framework Adequat
