589 Stimmen

Was ist das Tippen von Enten?

Was bedeutet _Duckmäusertippen_ in der Softwareentwicklung bedeuten?

0voto

Rahul Rathod Punkte 29

Duck Typing:

let anAnimal 

if (some condition) 
  anAnimal = getHorse()
else
  anAnimal = getDog()

anAnimal.walk()

Der obige Funktionsaufruf funktioniert nicht bei der Strukturtypisierung

Für die Strukturtypisierung gilt Folgendes:

IAnimal anAnimal

if (some condition) 
      anAnimal = getHorse()
    else
      anAnimal = getDog()

anAnimal.walk()

Das ist alles, viele von uns wissen bereits intuitiv, dass Ente tippen ist.

-1voto

Robin Punkte 23

Ich versuche, den berühmten Satz auf meine Art zu verstehen: "Python kümmert es nicht, ob ein Objekt eine echte Ente ist oder nicht. Alles, was es interessiert, ist, ob das Objekt, erstens 'quaken', zweitens 'wie eine Ente'."

Es gibt eine gute Website. http://www.voidspace.org.uk/python/articles/duck_typing.shtml#id14

Der Autor wies darauf hin, dass Sie mit der Duck-Typisierung Ihre eigenen Klassen erstellen können, die über ihre eigene interne Datenstruktur haben - auf die aber mit der normalen Python-Syntax zugegriffen wird.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X