Duck Typing
Duck typing is a principle 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. The term is a reference to the duck test: when I see a bird that walks like a duck and swims like a duck and quacks like a duck, I call that bird a duck. Wikipedia









