Partage
  • Partager sur Facebook
  • Partager sur Twitter

Révision : Jargon POO.

Receveur courant ? Appel de méthode ou Envoi d'un message ?

Anonyme
    12 janvier 2018 à 18:15:59

    Bonsoir les geeks ^^

    Voilà voilà, je reviens vers vous pour quelques eclaircissement par rapport au jargon de l'orienté objet, qui me paraissent, Linguistiquement un peu flou. :lol:

    Dans mon cours, j'ai une définition du receveur courant (this en java), qui est la suivante:


    Au sein d'une méthode M, le receveur courant accessible via le mot clé this ou self (en python), est l'objet auquel a été envoyé le message ayant conduit à l'exécution de M. This ne peut pas varier durant l'exécution d'une méthode.

    Alors, cette définition me paraît un peu flou. Si elle vous ai plus parlante vous pouvez m'expliquer s'il vous plaît?
    exemple dans la classe Main, on a un objet o qui appelle la méthode m() soit qui envoi le message m au Main qui est le receveur this ?  (c'est correct ça?) Oula c'est trop flou comme définition, mais je suis obligé de l'apprendre pour mon partiel, mon prof est maniaque sur les terminologies :lol: 

    • Partager sur Facebook
    • Partager sur Twitter
      12 janvier 2018 à 18:28:38

      Oui, j'ai l'impression que tu as compris le truc.

      Dans les langages comme Java et Python, this ou self, c'est l'objet dans lequel on déclare la méthode, et quand on appelle cette méthode, ça correspond à envoyer un message  à l'objet.

      • Partager sur Facebook
      • Partager sur Twitter

      Blond, bouclé, toujours le sourire aux lèvres...

      Anonyme
        12 janvier 2018 à 18:37:46

        LoupSolitaire a écrit:

        Oui, j'ai l'impression que tu as compris le truc.

        Dans les langages comme Java et Python, this ou self, c'est l'objet dans lequel on déclare la méthode, et quand on appelle cette méthode, ça correspond à envoyer un message  à l'objet.

        Je ne suis pas encore sûr malgré ton impression :lol:

        Là par exemple :

        int argv truc machin Main() {
        
        ... codage ... 
        
        Objet o = new Obejet();
        o.m();
        
        ... codage ...
        
        }


        C'est l'objet o qui envoit le message m à la classe Main ?



        • Partager sur Facebook
        • Partager sur Twitter
          12 janvier 2018 à 19:12:27

          Ah non :D

          Quand tu écris o.m(), tu envoie le message m à l'objet o.

          En gros chaque fois que tu écris une nouvelle méthode pour un objet, ça revient à déclarer un nouveau message que cet objet peut recevoir et comprendre.

          C'est une manière de penser les objets comme des boites aux lettres, qui vont réagir aux messages qu'elles reçoivent sans que celui qui envoie le message n'ait besoin de comprendre comment est fait l'objet.

          Pareil pour les API, si tu sais ce que c'est. Quand un site propose une API, c'est le même principe.

          Si openclassrooms.com était un objet, on pourrait appeler la méthode openclassrooms.com/forum pour obtenir la page d'accueil du forum par exemple, c'est exactement le même principe : tu sais pas comment est codé l'objet, tu lui envoie juste des messages. C'est juste une URL au lieu d'un appel de méthode dans un bout de code.

          -
          Edité par LoupSolitaire 12 janvier 2018 à 19:15:40

          • Partager sur Facebook
          • Partager sur Twitter

          Blond, bouclé, toujours le sourire aux lèvres...

          Révision : Jargon POO.

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown