Classes JavaScript

a marqué ce sujet comme résolu.

Bonjour,

J’aimerais bien apprendre React, mais mon formateur me déconseille fortement d’utiliser les classes JavaScript, qui semblent très décriées. Or, dans la doc ainsi que la plupart des ressources à ce sujet, elles semblent être un point fondamental de cette bibliothèque.

Ainsi, que devrais-je envisager? Utiliser de simples constructeurs à la place ?

Merci pour vos conseils.

+0 -0

Je comprends pas trop le délire de ton formateur, les class existent en JS (même si ça reste des Prototype derrière), elles sont faites pour être utilisées.

Qui plus est, si j’ai bonne mémoire React passe de toute façon par Babel pour transcoder derrière, donc autant avoir un code moderne (d’autant plus que React utilise du JSX plutôt que du JS à proprement parler) si un outil le convertit pour les anciens navigateurs derrière…

Les hypsters n’utilisent plus de classes pour faire du React. Mais la documentation officielle mentionne toujours les classes. Et leur usage est loin d’être déprécié. En fait au contraire, je pense que ça restera la principale façon de faire.

Les classes sont remplacées par des fonctions qui utilisent les hooks: https://fr.reactjs.org/docs/hooks-overview.html

A titre personnel, je préfère les classes. Mais comme le dit la phrase précédente… Au final il est question de préférence personnelle.

Je pense que l’usage des hooks fait particulièrement sens quand on utilise Redux, car c’est en fait déjà des hooks, donc on généralise l’utilisation. Reste que je trouve cette approche un peu illisible en fait. Mais qui suis-je pour parler: cette approche fait déjà le succès écrasant d’outils comme WordPress ou PrestaShop (en PHP, certes, mais ça ne change rien à l’efficacité).

+0 -0

Mon prof de JavaScript n’aimait pas les class. Il nous disait que c’était pratique mais que ça portait à confusion car ce n’était pas vraiment des classes. En gros il nous disait qu’avant d’utiliser ça, il voulait qu’on comprenne la Programmation Orientée Prototype.

En soit, maintenant, je n’aime pas bien les class car c’est très récent et pas encore bien implémenté (il faut activé l’option dans Firefox pour les attributs privés). Mais je les utilises quand même ! ^^

+0 -0

En soit, maintenant, je n’aime pas bien les class car c’est très récent et pas encore bien implémenté (il faut activé l’option dans Firefox pour les attributs privés). Mais je les utilises quand même ! ^^

ache

Les classes en elles mêmes ne sont pas récentes du tout. Et sont bien implémentées partout. Seulement certaines features ne sont pas intégré par l’ensemble des navigateurs. Je suis dubitatif. Tu nous dis entre deux mots que c’est pourri, mais au final c’est une fonctionnalité que tu utilises.

Bref, je voulais aussi ajouter que si les classes existent, c’est parce qu’elles sont bien évidemment plus claires à la lecture, elles ont un réel impact sur le développement. Et d’ailleurs le débat tourne autour des prototypes alors que la question originale ne les mentionne pas. L’approche React sans classes n’utilise pas de prototypes, n’est-ce pas ?

Bref, encore une fois, c’est une question d’affinité. En tous les cas les deux approches sont entièrement supportées par les équipes de ReactJS.

Les classes en elles mêmes ne sont pas récentes du tout.

Certes.

Je suis dubitatif. Tu nous dis entre deux mots que c’est pourri, mais au final c’est une fonctionnalité que tu utilises.

Nek

Je n’ai jamais dis ça. Au contraire, je dis que c’est mal nommé mais pratique. Je n’ai pas que ça ne soit pas totalement implémenter. Je n’aime pas devoir utiliser un outil de compatibilité ou devoir repasser derrière mon code pour rajouter une fonctionnalité qui n’était pas présente.

+1 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte