Page 1 sur 1

[..] Fonction callback

Posté : ven. 27 juin 2014 11:39
par jcaspar
B :D onjour à tous !

Je viens vous poser une question sur l'usage des fonctions callback ...
pouvez vous svp m'expliquer l'intéret de placer en paramétres d'une fonction
une autre fonction comme dans l'exemple basic ci dessous ...

En vous remerciant pour les explications que vous pourrez me transmettre. :mrgreen:


Jean-Marc

Code : Tout sélectionner


Local $nom
Local $toto=test($nom)

Func test($nom)
        MsgBox(64,"titre",$nom)
EndFunc


Func titi($toto)
EndFunc


titi(test("jmc"))

 

Re: [..] Fonction callback

Posté : ven. 27 juin 2014 13:18
par jguinch
Ca permet d'alléger un peu le code et éviter de se traîner des variables inutiles...
Par exemple :
► Afficher le texte
Ces deux exemples ont le même but : récupérer le texte contenu dans une URL.
Dans l'exemple 1, on passe par une variable de type Binary, qu'on converti ensuite en String.
Comme ce qui nous intéresse est de récupérer le texte, on peut se passer de la variable $bData et aller directement à l'essentiel.
L'inconvénient est qu'on ne contrôle pas ce que retourne $bData, donc pas de gestion d'erreur.

Re: [..] Fonction callback

Posté : ven. 27 juin 2014 13:24
par jchd
jcaspar,

Il n'y a aucun "callback" dans ton code, seulement une fonction qui utilise comme argument le résultat d'une autre fonction. Pas plus dans l'exemple de jguinch, d'ailleurs.

Un "callback" est un objet "fonction" passé en paramètre et invoqué depuis la fonction appelée.

Code : Tout sélectionner

Local $fonction = StringReverse
Local $str = "Voici une chaîne"

ConsoleWrite(Mystery($str, $fonction) & @LF)
$fonction = StringUpper
ConsoleWrite(Mystery($str, $fonction) & @LF)


Func Mystery($s, $callback)
    Return($callback($s))
EndFunc

Re: [..] Fonction callback

Posté : ven. 27 juin 2014 13:29
par jguinch
C'est vrai JC, je n'ai pas prêté attention au terme "callback" employé dans le premier post.
Ceci dit, belle démonstration.

jcaspar, ta question était-elle par rapport au "callback" ou par rapport à l'appel d'une fonction avec une autre fonction en paramètre ?

Re: [..] Fonction callback

Posté : mar. 01 juil. 2014 09:27
par jcaspar
J :mrgreen: e vous remercie pour vos réponses !
Ma question se situe au niveau du concept de callback mon but étant de comprendre
son fonctionnement et ses usages ...

Re: [..] Fonction callback

Posté : mar. 01 juil. 2014 13:49
par mikell
Le doublon n'est pas un exemple de callback :mrgreen: