Sobes.tech
Junior — Middle

Pouvez-vous expliquer le principe de l'utilisation des chaînes d'appels optionnels dans les langages de programmation?

sobes.tech IA

Réponse de l'IA

Les chaînes d'appels optionnels (optional chaining) sont un sucre syntaxique qui permet d'accéder en toute sécurité aux propriétés ou méthodes imbriquées d'un objet, même si certaines d'entre elles peuvent être nil (null). Cela évite les erreurs d'exécution liées à la tentative d'accès à une propriété d'une valeur nil.

En Swift, par exemple, si vous avez un objet qui peut être nil et que vous souhaitez accéder à sa propriété, vous utilisez ? pour un accès sécurisé :

class Person {
    var residence: Residence?
}

class Residence {
    var numberOfRooms = 1
}

let john = Person()
// john.residence peut être nil

// Sans chaînage optionnel, pour obtenir le nombre de pièces, il faut vérifier :
if let roomCount = john.residence?.numberOfRooms {
    print("Nombre de pièces : \(roomCount)")
} else {
    print("Informations sur le logement non disponibles")
}

Ici, john.residence?.numberOfRooms renverra nil si residence est nil, et ne provoquera pas d'erreur.

Ainsi, le chaînage optionnel simplifie le code et le rend plus sûr lors de la manipulation de valeurs optionnelles.