Не знаю по мне колбек нужен по ситуации. Вот такой пример есть :
Скажем вы используете класс стороннего разработчика, создающий дисплей объект в зависимости от настроек xml. При этом xml берется с хоста разраба. ( в принципе это и не важно даже). В итоге, после загрузки того самого xml создается этот объект. - далее происходит тот самый коллбек, который вам дает возможность продолжить описание своего Main.
Код AS3:
class Main
....
addChild(object(func));
function func() {
trace('object created')
do something
}
.....
Тоесть в итоге объект появился в дисплей листе - и мы теперь можем с ним работать. В чем принципиальная разница в данной ситуации - в удобстве работы. Разработчик мог бы сделать КастомЕвент для данной операции, и тогда бы уже писалось
Код AS3:
object.addEventListener(ObjectEvent.OK, ok);
1. Лишняя ( дополнительная) строка по добавлению события ( ну допустим другие события и не создаются для объекта кроме одного этого)
2. В памяти висит этот эвент пока не очистится мусорщиком или не будет удален вручную
Имхо
Добавлено через 2 минуты
Ну а по факту, кому как нравится, можно делать по разному. Если вы понимаете и то и то, логично , что в итоге в зависимости от ситуации вы сделаете лучшую реализацию , чем тот, кто этого не понимает, и вам же проще потом будет с этим работать, и понимать старую писанину...