Sobes.tech
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.