Questions marquées «duck-typing»

4
Python Pardon vs Permission et Duck Typing
En Python, j'entends souvent dire qu'il est préférable de "demander pardon" (capture d'exception) au lieu de "demander l'autorisation" (vérification de type / condition). En ce qui concerne l'application de la frappe de canard en Python, est-ce que c'est try: x = foo.bar except AttributeError: pass else: do(x) mieux ou pire …


4
Pourquoi de nombreux langages de programmation dynamique de type canard utiliseraient-ils une approche basée sur les classes au lieu de la POO basée sur des prototypes?
Étant donné que de nombreux langages de programmation dynamiques ont la caractéristique de taper du canard , et ils peuvent également ouvrir et modifier des méthodes de classe ou d'instance à tout moment (comme Ruby et Python ), alors… Question 1) Quel est le besoin d'une classe dans une langue …

6
Le canard tape-t-il un sous-ensemble du polymorphisme
Du polymorphisme sur WIkipedia En informatique, le polymorphisme est une fonctionnalité du langage de programmation qui permet de gérer les valeurs de différents types de données à l'aide d'une interface uniforme. De la saisie de canard sur Wikipedia En programmation informatique avec des langages de programmation orientés objet, la frappe …

3
Comment utilisez-vous la saisie de canard en javascript sans toujours vérifier les propriétés et les méthodes?
Je sais que javascript utilise le typage canard et au début, je pensais que cela rendrait le polymorphisme facile par rapport aux langages fortement typés comme C #. Mais maintenant, mes fonctions qui prennent des arguments sont jonchées de choses comme: if(myObj.hasSomeProperty()) ou if(myObj.hasSomeMethod()) ou if(isNumber(myParam)) etc. C'est vraiment moche …


1
Interfaces implicites et explicites
Je pense que je comprends les limites réelles du polymorphisme à la compilation et du polymorphisme à l'exécution. Mais quelles sont les différences conceptuelles entre les interfaces explicites (polymorphisme d'exécution. Ie les fonctions virtuelles et les pointeurs / références) et les interfaces implicites (polymorphisme de compilation. Ie les modèles) . …
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.