Réponses aux questions d'entretien React / Full Stack
1. Qu'est-ce que React ?
React est une bibliothèque JavaScript permettant de créer des interfaces utilisateur à partir de
composants réutilisables.
2. Différence entre React et JavaScript
JavaScript est un langage de programmation. React est une bibliothèque construite avec
JavaScript pour créer des interfaces.
3. Qu'est-ce qu'un composant ?
Une partie réutilisable de l'interface (Navbar, Footer, CarteProduit...).
4. Composant fonctionnel vs classe
Les composants fonctionnels utilisent les Hooks et sont aujourd'hui les plus utilisés. Les
composants de classe utilisent les méthodes de cycle de vie.
5. Qu'est-ce que le JSX ?
Une syntaxe proche du HTML utilisée dans React.
6. À quoi servent les props ?
À transmettre des données d'un composant parent à un composant enfant.
7. Différence entre props et state
Les props sont reçues du parent. Le state est géré par le composant et peut changer.
8. À quoi sert useState ?
À gérer l'état local d'un composant.
9. À quoi sert useEffect ?
À exécuter des effets secondaires comme les appels API.
10. Comment afficher une liste ?
Avec map() en utilisant une key unique.
11. Pourquoi utiliser une key ?
Pour permettre à React d'identifier chaque élément et optimiser le rendu.
12. Qu'est-ce que React Router ?
Une bibliothèque permettant de gérer la navigation entre les pages.
13. Différence entre Link et <a>
Link évite le rechargement complet de la page.
14. Comment protéger une route ?
En vérifiant l'authentification (JWT, Context API, etc.).
15. Comment communiquer entre composants ?
Avec les props, Context API ou un gestionnaire d'état.
16. let / const / var
const : non réassignable ; let : réassignable ; var : ancien mot-clé à éviter.
17. Promises et async/await
Ils permettent de gérer les traitements asynchrones.
18. Destructuring
Permet d'extraire des valeurs d'objets ou de tableaux.
19. map, filter, forEach
map transforme, filter sélectionne, forEach parcourt.
20. Comment React communique avec le backend ?
Avec des requêtes HTTP via Fetch ou Axios.
21. GET, POST, PUT, DELETE
Lire, créer, modifier et supprimer des données.
22. Qu'est-ce qu'une API REST ?
Une API qui utilise le protocole HTTP pour manipuler des ressources.
23. Pourquoi Axios ?
Pour simplifier les requêtes HTTP et leur gestion.
24. Gestion des erreurs API
Utiliser try/catch et afficher un message approprié.
25. Qu'est-ce que [Link] ?
Un environnement d'exécution JavaScript côté serveur.
26. Qu'est-ce qu'Express ?
Un framework [Link] pour créer des API REST.
27. Qu'est-ce qu'un middleware ?
Une fonction exécutée entre la requête et la réponse.
28. Comment sécuriser une API ?
JWT, validation des données, HTTPS, permissions.
29. Qu'est-ce que JWT ?
Un jeton d'authentification sécurisé.
30. MySQL vs MongoDB
MySQL est relationnel, MongoDB est NoSQL.
31. Clé primaire
Identifie chaque enregistrement de manière unique.
32. Clé étrangère
Crée une relation entre deux tables.
33. Comment éviter les injections SQL ?
Utiliser des requêtes préparées et valider les entrées.
34. Commandes Git
git clone, add, commit, push, pull, branch, merge.
35. Merge vs Rebase
Merge conserve l'historique, Rebase le réorganise.
36. Résoudre un conflit Git
Corriger les conflits puis valider avec un commit.
37. Parlez d'un projet
Présenter le contexte, votre rôle, les technologies et le résultat.
38. Votre rôle
Développement du frontend React et intégration des API du backend.
39. Difficultés rencontrées
Gestion de l'état, intégration API et responsive.
40. Collaboration avec le backend
Consommation des API REST et échanges avec le développeur backend.
41. Si une API change
Adapter le frontend puis tester.
42. Pourquoi notre entreprise ?
Pour apprendre, évoluer et contribuer à des projets.
43. Pourquoi vous recruter ?
Je suis motivé, curieux, rigoureux et j'apprends rapidement.
44. Gestion des délais
Je planifie mes tâches et communique en cas de difficulté.
45. Travail seul ou en équipe ?
Je suis à l'aise dans les deux contextes.
46. Où vous voyez-vous dans 5 ans ?
Développeur Full Stack confirmé.