Duck typing je princip, kde se vhodnost objektu určuje podle jaké metody vykonává, nikoli podle jeho třídy nebo typu — "pokud chodí jako kachna a křičí jako kachna, pak je to kachna." V Ruby vám jde o to, že objekt umí dělat něco (má metodu), nikoli jaký typ je. To umožňuje flexibilní, polymorfní kód bez dědičnosti nebo rozhraní.
Princip: chování namísto typu
()
duck.quack
=
=
make_it_quack(.new)
make_it_quack(.new)
