Quel est l'exemple du concept OOP 'Message Passing' en C# (méthodes d'appel/Passing parameters/Firing Events/Handling Events/???) et pourquoi cela s'appelle-t-il passage de message?OOP - Message passant en C#
Répondre
Appels de méthode. C'est ce qu'on appelle le passage de message pour le distinguer de la notion impérative d '«appel d'une fonction» et pour renforcer l'idée que l'objet récepteur décide quoi faire. Sur le site d'appel, vous dites simplement au destinataire le "message".
Il est appelé passage de message pour le distinguer des paramètres de passage.
Un avantage majeur de transmettre un message est que vous pouvez modifier le contenu du message sans modifier la signature de la méthode recevant le message.
Un autre est que plusieurs méthodes peuvent avoir besoin de la même information, il peut donc être défini et changé au même endroit.
J'apprécie votre réponse. Mais la réponse de Sii est plus claire. –
Certains pensent que les messages transmis et les appels de méthode sont différents. Nous utilisons le terme de façon interchangeable, mais le sens est subtil.
Dans smalltalk, le passage de message était exécuté avec une limite de temps et l'objet avait un moyen de déterminer s'il pouvait gérer un message qui n'était pas explicitement défini en tant que méthode. Ruby appelle cette méthode_missing. Les méthodes en C++ en particulier sont liées au moment de la compilation, sans moyen d'ajouter dynamiquement des façons de gérer plus de messages. C# 4.0 a un mélange, une fois que vous commencez à lancer la dynamique autour. Il existe une autre école de transmission de messages, Erlang croit que tous les arguments de message doivent être découplés en état. Autrement dit, ils sont soit immuables ou des copies.
J'ai souvent entendu cette dernière définition - les messages sont des appels de méthode découplés qui peuvent être multithread ou traités à partir de la machine. Dans des langages tels que C++ et Java, cette fonctionnalité n'existe pas, donc les termes ont tendance à être synonymes. –
Hein? Est-ce une vraie question? Parce que tu as répondu toi-même. Fondamentalement parce que c'est la façon dont les objets communiquent; C'est ce qu'on appelle "le passage des messages". –
Oui c'est. J'ai découvert le concept. Et je suis ici pour le vérifier. –