open

A quoi sert une fonction en programmation ?

#1 A quoi sert une fonction ? open

Supposons que le trader fasse une nouvelle transaction. Par exemple s'il achète 42€ pour revendre 40€ un lot de 20 actions. Et bien il nous faut refaire le calcul de benef.

Ci-dessous je programme ce nouveau calcul et je stocke le résultat dans la variable benef. Il y a plusieurs choses à voir. La variable est à gauche du signe de l'affectation donc elle reçoit une nouvelle valeur mais elle perd l'ancienne. La variable ayant déjà été déclarée il ne faut pas utiliser le mot clé var.

Vous pouvez voir également que c'est un calcul que l'on a déjà fait mais avec des valeurs différentes. A chaque nouvelle transaction du trader il faudra refaire ce même calcul avec les valeurs de la transaction. L'idée c'est de programmer une sorte de "boîte de calcul" à qui on va sous-traiter ce calcul. Ensuite à chaque nouvelle transaction on ré-utilisera cette boîte.

Boîte de calcul

C'est une fonction qui va nous permettre de faire ça. En fait c'est la fonction qui va servir de boîte.

fonction en programmation

La fonction vous allez la déclarer pour dire ce qu'elle fait. Vous la déclarez qu'une seule fois. Au moment de la déclaration il n'y a aucune instruction qui est exécutée.

Pour la déclarer vous allez vous servir d'un snippet :

  1. Vous tapez fun comme function et vous choisissez function_with_name.
  2. Vous tapez tab puis calculerBenef pour donner un nom à la fonction. Ce nom servira à appeler la fonction pour demander le calcul.
  3. Vous tapez tab et vous tapez prixAchat,prixVente,qt. Là vous indiquez la liste des informations que la fonction prend en entrée. Cette liste je l'appelle la liste des paramètres de déclaration. Vous devez mettre une virgule entre chaque paramètre de déclaration. Certains parlent d'argument. D'ailleurs c'est ce que Sublime Text écrit.
  4. Vous tapez tab et vous déclarez une variable calcul et vous lui affectez la formule de calcul en vous servant des paramètres de déclaration.
  5. Puis pour terminer vous retournez la valeur de calcul au moyen de l'instruction return.

Ensuite vous allez appeler cette fonction autant de fois que vous voulez. Vous lui donnez à chaque fois de nouvelles valeurs en paramètres d'appel.

Ce sont toujours les mêmes instructions qui s'exécutent mais avec des valeurs différentes.

Les paramètres d'appel sont copiés dans les paramètres de déclaration.

La fonction calculerBenef

#2 Portée de la variable et des paramètres de déclaration. open

Ici la variable calcul est un exemple de variable qui est déclarée dans la fonction. Cette variable n'existe que dans la fonction. On dit qu'elle est locale à la fonction.

Dans le tutoriel sur la variable je vous ai dit qu'une variable avait une portée. Et bien ici la portée de la variable calcul c'est la fonction.

C'est la même chose pour les paramètres de déclaration qui ne sont visibles que dans la fonction.

#3 J'ai besoin de changer le calcul... open

Supposez qu'il y ait des frais à chaque transaction. Ce qui est le cas dans la réalité. Il me suffit de modifier le calcul dans la fonction et la modification sera reportée dans tous les appels que j'ai fait.