Мой друг и я ведем эту дискуссию о том, что в AS3 быстрее передать это другому объекту, чтобы иметь возможность общаться / взаимодействовать между ними или, если события - путь. Хотя использование Events для выполнения этой задачи довольно стандартно, вот несколько фиктивных кодов для иллюстрации вопроса:
public class ClassA{
public var items:Array = new Array();
public function classA(){
items.push(new ClassB(this));
}
public function poke(){
trace('yes, can i help you?');
this.items.speak();
}
}
public class ClassB{
public var parentObject:Object;
public function classB(pobj:Object){
parentobject = pobj;
parentobject.poke();
}
public function speak(pobj:Object){
trace('nothing, forget it!');
}
}
Таким образом, если ClassA создается, он помещает новый объект ClassB в свой Array-Array. Конструктор ClassB вызывает poke () экземпляра Class-A, который немедленно вызывает функцию speak () - ClassB.
Я не знаю, каков правильный термин для этого метода (или, если есть, даже один). Мой друг говорит, что он чувствует, что его код работает быстрее при использовании многих объектов, но я сомневаюсь в этом, потому что думаю, что это может запутать сборщик мусора.
Что вы думаете об этой теме и какие источники вы бы порекомендовали прочитать по этой теме?