22. décembre 2017 ( Développement, F# )

En premier lieu: le plus important

Une fonction en programmation fonctionnelle est comme une valeur

On peut commencer !

Les Fonctions

Fonction simple

let bonjour = 
    printfn "Coucou"

on donne le nom de la fonction bonjour et à la ligne après le = on défini ce qu’elle fait.

ici, elle affiche dans la console « Coucou »

Fonction avec un paramètre

On reprend la même fonction sauf que si on rajoute un mot après son nom, celui ci deviens un paramètre de la fonction

let bonjourToi prenom = 
    printfn "Coucou %s" prenom

donc le paramètre est prenom

Fonction avec plusieurs paramètres

Identique sauf que l’on rajoute le nombre de paramètres que l’on veux

let bonjourVous prenom prenom2 = 
    printfn "Coucou %s et %s" prenom prenom2

Fonction avec un retour

on passe sur un nouveau modèle :

let NOM_FONCTION [Param1 .... ] [ : TYPE_RETOUR] =
    CE_QUE_LA_FONCTION_FAIT

Voici la même fonction que précédément mais qui n’affiche pas, elle retourne le résultat dans un string

let bonjourToiString prenom : string = 
    sprintf "Coucou %s" prenom

Utilisation des fonctions

bonjour
bonjourToi "toto"
bonjourVous "toto" "tata"
printfn "%s" (bonjourToiString "toto2")

On vois que contrairement au programmation traditionnelle, on n’a pas besoin de mettre nos paramètres entre parenthèse.

Par contre si on veux utiliser une fonction avec un/plusieurs paramètre(s) dans une autre fonction on utilise quand même celles-ci,

mais pour entourer la fonction et ses paramètres

Conclusion

Le plus important est de retenir ceci

let NOM_FONCTION [Param1 .... ] [ : TYPE_RETOUR] =
    CE_QUE_LA_FONCTION_FAIT

Nom de la fonction, des paramètres optionnels comme le type de retour si il y en a un

et enfin le code de la fonction

Code disponible sur GITHUB !