Duck typing egy olyan elv, ahol egy objektum alkalmasságát a metódusai határozzák meg, nem az osztálya vagy típusa — "ha úgy sétál, mint egy kacsa, és úgy vakít, mint egy kacsa, akkor kacsa". A Rubyban azt nézed, hogy egy objektum képes-e valamit tenni (van-e meg a metódusa), nem azt, hogy milyen típusú. Ez lehetővé teszi rugalmas, polimorf kódot öröklés vagy interfészek nélkül.
Az elv: viselkedés a típus helyett
()
duck.quack
=
=
make_it_quack(.new)
make_it_quack(.new)
