In computer science, polymorphism is a programming language feature that allows values of different data types to be handled using a uniform interface.
Dalla digitazione anatra su Wikipedia
In computer programming with object-oriented programming languages, duck typing is a style of dynamic typing in which an object's current set of methods and properties determines the valid semantics, rather than its inheritance from a particular class or implementation of a specific interface.
La mia interpretazione è basata sulla digitazione anatra, gli oggetti metodi / proprietà determinano la semantica valida. Significa che la forma corrente degli oggetti determina l'interfaccia che mantiene.
Dal polimorfismo è possibile affermare che una funzione è polimorfica se accetta più tipi di dati diversi purché mantengano un'interfaccia.
Quindi, se una funzione può eseguire il dump, può accettare più tipi di dati diversi e operare su di essi purché tali tipi di dati abbiano i metodi / le proprietà corretti e quindi mantengano l'interfaccia.
(L'uso del termine interfaccia non è inteso come un costrutto di codice ma più come un costrutto descrittivo, documentante)
- Qual è la relazione corretta tra ducktyping e polimorfismo?
- Se una lingua può anatra, vuol dire che può fare il polimorfismo?