Pourquoi attendre un test ? Parce que dans tous les cas il faudra bien attendre un test, le contrôle du type étant loin d'être suffisant.
Comme tu dis ça ne remplace ni la doc ni les tests donc ça fait doublon, triplon même.
Et surtout ça ne permet pas de bénéficier des avantages du typage dynamique. Je pense que l'incompréhension vient du fait de ne pas tirer parti du typage dynamique et d'y voir qu'une sorte de manque à rattraper, comme on le voit dans les exemples donnés.
Si je prend print par exemple, je n'ai pas à lui donner un string en paramètre et il n'a pas non plus à tester quel type est le paramètre, il appelle simplement __str__() de l'objet passé. Au pire, comme l'indique manawy, on utilise beaucoup plus hasattr que isinstance.
[^] # Re: méthode
Posté par wilk (site web personnel, Mastodon) . En réponse au journal Indication de type pour Python. Évalué à 3.
Pourquoi attendre un test ? Parce que dans tous les cas il faudra bien attendre un test, le contrôle du type étant loin d'être suffisant.
Comme tu dis ça ne remplace ni la doc ni les tests donc ça fait doublon, triplon même.
Et surtout ça ne permet pas de bénéficier des avantages du typage dynamique. Je pense que l'incompréhension vient du fait de ne pas tirer parti du typage dynamique et d'y voir qu'une sorte de manque à rattraper, comme on le voit dans les exemples donnés.
Si je prend print par exemple, je n'ai pas à lui donner un string en paramètre et il n'a pas non plus à tester quel type est le paramètre, il appelle simplement
__str__()de l'objet passé. Au pire, comme l'indique manawy, on utilise beaucoup plus hasattr que isinstance.