#3 Apprendre le F# ! Les Fonctions

Rédigé par TecKnologikS le mardi novembre 29, 2016






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 !



Permalien - Tags: apprendre, f#, f, fonction, function, paramètres, retour, type, let, tecknologiks

« #2 Apprendre le F# ! Formater du texte - #4 Apprendre le F# ! IF ELSE MATCH (Conditions) »