Duck typing ایک اصول ہے جہاں کسی object کی موزوں ہونے کا تعین وہ methods کے لحاظ سے کیا جاتا ہے جن کا وہ جواب دیتا ہے، نہ کہ اس کی class یا type سے — "اگر یہ بتخ کی طرح چلتا ہے اور بتخ کی طرح ڈاکتا ہے، تو یہ بتخ ہے۔" Ruby میں، آپ کو یہ پرواہ ہے کہ ایک object کر سکتا ہے (method ہے)، نہ کہ یہ کیا type ہے۔ یہ وراثت یا interfaces کے بغیر لچکدار، polymorphic code کو ممکن بناتا ہے۔
اصول: رویہ type سے زیادہ
()
duck.quack
=
=
make_it_quack(.new)
make_it_quack(.new)
