“鸭子打字”这个名字背后是否有一个故事,我听说'如果它看起来像一只鸭子,听起来像一只鸭子,我们称它为鸭子'(或类似的东西),但为什么是鸭子?为什么不``如果它看起来像一个_并且听起来像一个_,我们称之为_''。
这听起来像飞行马戏团的素描,但我不记得了。名字背后是否有故事?
答案 0 :(得分:8)
答案 1 :(得分:3)
答案 2 :(得分:3)
这不是一个真正的编程问题,但我的猜测:鸭子走路很有趣,他们嘎嘎叫。这很有趣,可以把它变成一个修辞格。 : - )
答案 3 :(得分:3)
引用维基百科的article on Duck Typing:
这个概念的名称是指James Whitcomb Riley的鸭子测试,可以用以下语言表达:“当我看到 鸟像鸭子一样走路,像鸭子一样游泳,像嘎嘎叫一样呱呱叫 鸭子,我把那只鸟称为鸭子。“
......并且来自同一页......
Alex Martelli早期(2000年)在一条消息中使用了该术语 到comp.lang.python新闻组。他还强调 对文字鸭测试的误解,这可能表明了 术语已被使用:
“换句话说,不要检查它是否是鸭子:检查它是否 QUACKS-like-duck,WALKS-like-a duck等等,具体取决于 您需要扮演什么样的鸭子行为的子集 语言游戏。“
答案 4 :(得分:0)
不,类比是如果变量看起来像一个整数(例如),并且作为一个整数,它必须是一个整数(类型)。
鸭子打字意味着'没有明确的预先类型'。