Цитата:
|
Если вы посмотрите на Java / C# - коллекции тоже не являются частью языка, а частями фреймворков, EE / SE - в Java или .NET соответственно.
|
Ну это уже удар ниже пояса... Как бы разработчики под java и .net могут быть спокойны, что написанный ими код исполняется с той же скоростью, что и встроенный в язык функционал... Flash, увы, похвастаться этим не может, поэтому единственным выходом была бы поддержка коллекций на нативном уровне, аналогично массиву. Так что коллекции - беда не столько флекса, сколько флэша. А пример с ArrayCollection - как раз тот случай, когда лучше написать свое, чем пользоваться предоставляемым фреймворком. Так у нас есть свои реализации IList и ICollectionView, которые отлично работают и пихаются в качестве датаПровайдера во флексовые компоненты, и которые представляют собой реализацию джавовских List, Set и Map. Кроме того они поддерживают сериализацию/десериализация (правда у на она своя, не AMF. Как скажет etc - с блэкджеком и шлюхами). Единственный недостаток - скорость по сравнению с Array. Так binarySearch + splice в Array забарывает RBTree, хотя в той же java это одна из наиболее быстрых коллекций по работе с упорядоченными данными.
Насчет UIComponent я уже высказался. Это отправная точка - юзать или не юзать флекс. Если нужна большая скорость или совместимость с pure AS3 - флекс идет лесом. Не нужны - худо ли или нет, но он со своими обязанностями справляется, можно поюзать.
Так что пока нет альтернатив, или etc не выложит свой мегазамечательный фреймворк в открытый доступ - надо или пользоваться тем, что есть (понятно, с применением головы и по-возможности прямых рук) или писать свое. Что не всегда целесообразно или, как сказал Нуран - рентабельно, в контексте той или иной задачи.