Menu
CoddyTech

L'instruction Guard Let

Fait partie de la section Fondamentaux du Journey Swift de Coddy. Leçon 13 sur 86.

Alors que if let déplie une valeur optionnelle et exécute du code lorsqu’une valeur existe, guard let adopte l’approche inverse. Il quitte la fonction immédiatement lorsqu’une valeur est absente. C’est particulièrement utile dans les fonctions où tu veux traiter d’abord le cas « mauvais » et garder la logique principale claire.

func greet(name: String?) {
    guard let unwrappedName = name else {
        print("No name provided")
        return
    }
    print("Hello, \(unwrappedName)!")
}

greet(name: "Taylor") // Bonjour, Taylor !
greet(name: nil)      // Aucun nom fourni

L’instruction guard let vérifie si name a une valeur. Si ce n’est pas le cas, le bloc else s’exécute et la fonction se termine avec return. Si l’optionnel contient une valeur, celle-ci est déballée dans unwrappedName, et voici la principale différence avec if let : la variable déballée reste disponible pour le reste de la fonction, et pas seulement à l’intérieur d’un bloc.

Ce modèle de « sortie anticipée » rend votre code lisible en traitant les cas d’erreur dès le départ, afin que la logique principale ne soit pas imbriquée dans plusieurs instructions if.

challenge icon

Défi

Facile

Écris une fonction validateAge qui prend un paramètre facultatif age et utilise guard let pour le déballer en toute sécurité.

Si l’âge est nil, retourne "Invalid age". Sinon, retourne "Age: [value]", où [value] est l’âge déballé.

Paramètres :

  • age (Int?) : un entier facultatif représentant l’âge d’une personne

Valeur de retour : une chaîne, soit "Invalid age" si l’entrée est nil, soit "Age: [value]" avec la valeur déballée.

Les lignes verrouillées sous ta fonction lisent l’âge depuis l’entrée (une entrée de nil donne nil) et affichent la valeur retournée par ta fonction.

Exemple : si age vaut 25, retourne "Age: 25". Si age vaut nil, retourne "Invalid age".

Essayez vous-même

func validateAge(age: Int?) -> String {
    // Écrivez le code ici
}
quiz iconTestez-vous

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

Entraînez-vous par vous-même : Playground Swift