IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Quel niveau pour comprendre la récursivité ?


Sujet :

JavaScript

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 166
    Points : 61
    Points
    61
    Par défaut Quel niveau pour comprendre la récursivité ?
    Bonjour,

    Je suis en train de faire la formation de freecodecamp. J'ai fait le HTML, CSS et maintenant le JavaScript. Tout ce passait bien jusqu'à arriver à la fin sur la récursivité.
    Pour l'instant je dois avouer qui je comprends pas vraiment.
    je comprends que s'est une fonction qui s'auto-appelle mais je me vois pas trouver par moi même une fonction de ce genre, alors je m'inquiète.

    Du coup je m'interroge... est ce que j'ai les facilités nécessaire pour être développeur web ?

    Est ce que c'est normal de pas comprendre pour un débutant ?
    Est ce que c'est le max de la difficulté ou pire par la suite ?

  2. #2
    Inactif  
    Homme Profil pro
    Webmaster
    Inscrit en
    Juin 2021
    Messages
    645
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juin 2021
    Messages : 645
    Points : 1 280
    Points
    1 280
    Par défaut
    bonjour,

    concernant les fonctions : elles peuvent avoir des paramètres :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function machin( param1, param2)
    {
       // ...
    }
    • RIEN n'empêche de rappeler cette fonction...
    • que ce soit avec les même paramètres,.. ou d'autres (ou aucun, si prévu).



    N.B. Je n'ai JAMAIS été sensible / ou eu envie d'apprendre la POO (Programmation Orientée Objet).
    Je continue à programmer en "Procédural".

    LA SEULE question que tu dois te poser (compte-tenu de ta question) :
    • "Ai-je vraiment ENVIE de programmer ?..."

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 166
    Points : 61
    Points
    61
    Par défaut
    Bonjour jreaux,
    Tu veux dire que tu utilises JavaScript en procédural où que tu utilises un autre langage de type procédural ?
    Pour moi JavaScript permet uniquement la poo.
    Donc si tu n'utilises pas JavaScript, connais-tu quelqu'un qui utilise JavaScript et qui pourrait me donner son avis?
    Déjà merci pour ta réponse.

  4. #4
    Expert éminent Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 858
    Points : 6 556
    Points
    6 556
    Par défaut
    Tu n'as pas à t'inquiéter plus que ça, la récursivité donne du fil à retordre à pas mal de gens parce que c'est bien moins intuitif qu'une simple boucle.
    Pour en venir à bout, il n'y a pas trente-six solutions, il faut s'entraîner. Fait le pour des tâches très basiques:
    • compter jusqu'à n (ou de n à 0)
    • élever un nombre à la puissance n
    • calculer le nième terme d'une suite numérique

    Et surtout observe: suit le déroulement d'une telle fonction d'appels en appels jusqu'à la condition d'arrêt, regarde ce qui s'y passe.
    Il n'y a pas de neurone de la récursivité offert à la naissance à quelques Élus par les Dieux, il faut juste se familiariser (idem pour la POO).

    Si tu cherches d'autres exemples pour t'entraîner, tu peux garder en tête que: Toute boucle peut-être remplacée par une fonction récursive (et vice et versa). Donc dés que tu vois une boucle dans un script tu peux t'amuser à la remplacer par un appel à une fonction récursive pour faire la même chose.

    À noter que l'avantage d'une fonction récursive est sa concision et elle peut apporter une certaine élégance à un script. Mais pour nombre de langages dont Javascript et PHP, la version récursive d'une fonction est la plupart du temps bien moins performante que son pendant non-récursif (car les appels de fonctions ont un coût).

    Ceci dit, la récursivité, même si tu ne l'emploieras pas souvent, fait partie du bagage algorithmique à acquérir.
    Brachygobius xanthozonus
    Ctenobrycon Gymnocorymbus

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    166
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 166
    Points : 61
    Points
    61
    Par défaut
    Merci bien, c'est la réponse que j'attendais. Suis soulagé.je vais pouvoir me mettre en position étoile et me détendre.

    "Il n'y a pas de neurone de la récursivité offert à la naissance à quelques Élus par les Dieux,". J'ai adoré !

    Bon code.

  6. #6
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    regardez cette discussion, il y a plusieurs schémas qui expliquent comme cela se passe :
    https://www.developpez.net/forums/d2...ion-recursive/

  7. #7
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 451
    Points : 4 600
    Points
    4 600
    Par défaut
    perso, pour moi, ca a ete le cas pratique "reel" qui m'a permis de bien comprendre la recursivite : l'exploration de dossiers

    j'etais debutant quand j'ai voulu le faire, et ca a direct fait "tilt" ... je pense qu'apres, chacun apprend a son rythme. mais je ne pense pas que ce soit un "gros niveau", mais je pense que c'est un "baggage" necessaire pour un developpeur
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

Discussions similaires

  1. Quel CMS pour . . . analyser et comprendre le fonctionnement d'un CMS
    Par nikolours dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 24/04/2011, 13h54
  2. Réponses: 5
    Dernier message: 02/09/2010, 14h56
  3. Quel niveau pour un MIAGE ?
    Par Imageek dans le forum Etudes
    Réponses: 7
    Dernier message: 21/04/2010, 15h55
  4. Quel langage pour mieux comprendre la POO?
    Par vg-matrix dans le forum Débuter
    Réponses: 5
    Dernier message: 08/01/2010, 19h17
  5. [1.x] Quel framework pour le dével haut niveau et modulaire ?
    Par okamiPHP dans le forum Symfony
    Réponses: 2
    Dernier message: 20/11/2007, 22h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo