Junior — Middle
Comment peut-on s'assurer que la structure de données implémente l'interface requise?
sobes.tech IA
Réponse de l'IA
En Go, pour vérifier qu'une structure implémente une interface, on peut utiliser une implémentation _ implicite_ de l'interface : il suffit que la structure ait toutes les méthodes de l'interface.
Pour une vérification explicite lors de la compilation, on ajoute souvent une affectation d'une interface vide à une variable de type structure :
var _ MyInterface = (*MyStruct)(nil)
Cela oblige le compilateur à vérifier que MyStruct implémente MyInterface. Sinon, une erreur de compilation sera levée.
Cette approche est pratique pour la documentation et la détection précoce des erreurs d'implémentation d'interface.