Ich mag Steve Yegges Prototype Pattern example und entschied mich, ein kurzes Proof-of-Concept-Beispiel zu entwickeln.Wie behandelt Yegges Prototypmusterbeispiel Instanzvariablen?
Allerdings habe ich die Dinge nicht wirklich durchdacht. Obwohl es sich hervorragend eignet, um das Verhalten von Objekten dynamisch zu bestimmen, und eine einfache Lösung für Steves opinionated elf Beispiel ist, versuche ich immer noch, den besten Weg herauszufinden, um Instanzvariablen zu handhaben.
Zum Beispiel sagen wir, ich habe ein AwesomeDragon-Objekt. Ich möchte dann ein AwesomeDragonImmuneToFire-Objekt erstellen, damit ich ein neues Kind von AwesomeDragon (AwesomeDragonImmuneToFire erbt Eigenschaften von AwesomeDragon) und "put" "ImmuneToFire" als eine Eigenschaft mit einem Wert von "True". So weit, ist es gut. Sagen wir nun, ich möchte mein AwesomeDragon-Objekt auf einer Tour durch nahe gelegene Bauerndörfer schicken. Dies beinhaltet die Aktualisierung der Eigenschaft 'position' von AwesomeDragon. In dem Moment, in dem ich das mache, wird AwesomeDragonImmuneToFire ebenfalls starten.
Ist die beste Lösung zum Überschreiben von Instanzwerten bei der Objekt-Erstellung, z. sofort den Wert 'position' auf AwesomeDragonImmuneToFire auf den aktuellen 'get' Wert von 'position' setzen?
Ich dachte, die Idee der Prototypen war, dass es keine realen Klassen gab - nur Instanzen einer Prototypklasse. Das hybride Prinzip könnte gut funktionieren, denke ich, aber ich mache mir Sorgen, dass man dann gezwungen ist, Objektmethoden und Prototypeigenschaften zu überprüfen. –
Danke für die Rückmeldung übrigens - ich mag dein Beispiel und upvoted. –
Es gibt tatsächlich nur Instanzen. Die Instanz von Awesome, die als Prototyp und Instanz von Awesome in worlflow verwendet wird, kann jedoch anders sein als im obigen Beispiel –