Ответ 1
Утиная печать - это фраза, заимствованная из гораздо более старой "прогулки, как утка". Последнее было намного дольше, чем идея программирования, которую он описывает. См. answerbag.com
Есть ли история за названием "утиная печать", я слышал, "если это похоже на утку, и звучит как утка, пусть называет ее утки" (или что-то в этом роде) но почему утка? Почему бы не `` если он выглядит как _ и звучит как _, пусть назовите его _ '.
Это похоже на эскиз летающего цирка, но я его не помню. Есть история за названием?
Утиная печать - это фраза, заимствованная из гораздо более старой "прогулки, как утка". Последнее было намного дольше, чем идея программирования, которую он описывает. См. answerbag.com
http://groups.google.com/group/comp.lang.python/msg/e230ca916be58835?hl=en&
Алекс участвует...;)
Это не вопрос программирования, но моя догадка: утки ходят смешно, и они крякают. Это достаточно забавно, чтобы превратить его в фигуру речи.: -)
Цитата Wikipedia статья о Duck Typing:
Название понятия относится к тесту утки, приписываемому James Whitcomb Riley, который можно сформулировать следующим образом: "Когда я вижу птица, которая ходит как утка и плавает, как утка и шарлатки, как утка, я называю эту птицу утки".
... и с той же страницы...
Alex Martelli в начале (2000) использовал термин в сообщении в группу новостей comp.lang.python. Он также подчеркнул недоразумение теста литеральной утки, что может указывать на то, что термин уже используется:
"Другими словами, не проверяйте, является ли это IS-утка: проверьте, QUACKS-like-утка, WALKS-like-утка и т.д. И т.д., В зависимости от того, какое подмножество утиного поведения вам нужно играть языковые игры с."
Нет, аналогия заключается в том, что если переменная выглядит как целое число (например) и действует как целое число, оно должно быть целым числом (тип).
Утиная печать означает "отсутствие явного предопределения типа".