Ich beginne, Design-Muster zu lernen. Ich verstehe, dass der Prototyp eine exakte Kopie eines Objekts ist, das ich bereits habe, und Flyweight zum Erstellen ähnlicher Objekte dient.Prototyp vs Fliegengewicht
Ich habe 2D-Platformer-Spiel wie Mario programmiert (in Java). Es gibt viele Feinde, die gleich sind, der einzige Unterschied ist ihre Position [x,y]
. Es gibt auch Wände, die aus einer großen Anzahl von Rechtecken aufgebaut sind und der einzige Unterschied ist ihre Position [x,y]
.
Ist es ratsam, einige dieser Entwurfsmuster in dieser speziellen Situation zu verwenden? Sollte ich einen Prototyp verwenden, um Objekte über klonable zu klonen und dann [x,y]
setzen?
Ist es besser, Fliegengewicht zu verwenden - wenn ich ein neues Objekt brauche, gebe ich es einfach von meiner hashmap zurück und setze dann [x, y]?
In beiden Szenarien vermeide ich die Verwendung neuer Operator, aber ich bin mir nicht sicher, welche zu verwenden.