Comprendre les fonctions
Fait partie de la section Fondamentaux du Journey GO de Coddy. Leçon 51 sur 109.
Les fonctions sont des blocs de code réutilisables qui exécutent des tâches spécifiques. Elles aident à organiser le code et à éviter la répétition.
Créons une fonction simple qui ajoute deux nombres :
func add(x int, y int) int {
return x + y
}
func main() {
result := add(5, 3)
fmt.Println("5 + 3 =", result)
}Après l'exécution de ce code, le nombre 8 s'affichera à l'écran comme le résultat de l'addition de 5 et 3 :
5 + 3 = 8Décomposons la manière de définir une fonction :
D'abord, nous déclarons la fonction avec un nom et des paramètres :
func add(x int, y int) int {Cela crée une fonction nommée add qui prend deux paramètres entiers et retourne une valeur entière.
Ensuite, écrivons le corps de la fonction qui effectue le calcul :
return x + yCette simple ligne additionne les deux paramètres et renvoie le résultat là où la fonction a été appelée.
Voyons maintenant comment appeler notre fonction et utiliser le résultat :
result := add(5, 3)Cette ligne appelle notre fonction add avec les valeurs 5 et 3, et stocke la valeur retournée (8) dans une nouvelle variable appelée result.
Enfin, affichons le résultat à l'utilisateur :
fmt.Println("5 + 3 =", result)Ceci affiche le texte "5 + 3 =" suivi de la valeur stockée dans result, qui est 8.
Défi
DébutantDans ce défi, vous allez vous entraîner à créer et utiliser une fonction simple en Go.
Votre tâche consiste à compléter la fonction greet qui prend un nom comme paramètre et renvoie un message d'accueil.
La fonction doit retourner une chaîne au format : "Hello, " + name + "!"
La fonction doit retourner une chaîne au format : "<code>Hello, Gopher!"
Essayez vous-même
package main
import "fmt"
// TODO: Complétez la fonction greet qui prend un paramètre name
// et renvoie une chaîne de salutation au format : "Hello, " + name + "!"
// Exemple : si name est "Gopher", renvoyez le texte exact des instructions
func greet(name string) string {
// Votre code ici
}
func main() {
// Testez la fonction avec un nom prédéfini
name := "Gopher"
message := greet(name)
fmt.Println(message)
// Sortie attendue : Hello, Gopher!
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs de comparaison et logiques
Opérateurs de comparaison - Partie 1Opérateurs de comparaison - Partie 2Opérateur logique ANDOpérateur logique OROpérateur logique NOTBases de la priorité des opérateursRécapitulatif - Effectuer des comparaisons7Structures de contrôle : Les boucles
Explication de la boucle `for`Boucle For - Les basesBoucle For - Condition uniquementLe mot-clé `break`Le mot-clé `continue`Boucles imbriquéesRécapitulatif - Répéter des actions2Variables et types de données de base
Qu'est-ce qu'une variableInférence de type avec `:=` Entiers (int)Nombres à virgule flottanteBooléensChaînes de caractères (Strings)Valeurs zéroConstantesConventions de nommageRécapitulatif - Variables et types5Entrées/Sorties de base
Sortie formatéeVerbes de formatageAffichage des typesSaisie utilisateur de baseRécapitulatif - Entrées et Sorties8Fonctions
Comprendre les fonctionsDéclarer une fonctionAppeler des fonctionsParamètres de fonctionRetourner une valeur uniqueRetourner plusieurs valeursValeurs de retour nomméesBases de la portée des fonctionsRécapitulatif - Créer du code réutilisable11Types composites : Slices
Introduction aux SlicesDéclaration de littéraux de SlicesCréation de Slices avec `make`Longueur vs Capacité des SlicesAccès aux éléments d'un SliceAjout d'élémentsDécoupage de Slices/Tableaux existantsItération sur les SlicesCopie de SlicesRécapitulatif - Listes dynamiques3Opérateurs de base
Opérateurs arithmétiquesOpérateur de divisionL'opérateur moduloOpérateur d'affectationOpérateurs d'affectation augmentéeIncrémentation et décrémentationRécapitulatif - Calculs6Structure de contrôle : Les conditionnelles
L'instruction `if`Le mot-clé `else`Le mot-clé `else if`Masquage de variable dans `if`Initialisation des variablesL'instruction `switch``switch` avec expressions`switch` sans expressionLe mot-clé `fallthrough`Récapitulatif - Prendre des décisions9Pointeurs
Qu'est-ce qu'un pointeur ?Déclaration de variables pointeursL'opérateur d'adresseDéréférencement de pointeursUtiliser des pointeurs dans les fonctionsPointeurs NilRécapitulatif - Comprendre les pointeurs12Types composites : Maps
Introduction aux MapsDéclaration de littéraux de MapCréation de Maps avec `make`Ajout et mise à jour de paires clé-valeurAccès aux valeurs d'une MapVérification de l'existence d'une cléSuppression d'entrées de MapTaille d'une MapItération sur les MapsRécapitulatif - Stockage clé-valeurEntraînez-vous par vous-même : Compilateur Go en ligne