Конкретно, что я больше всего терпеть не могу во флексовом фреймворке - mx.collections.*, mx.binding.*, mx.styles.*, mx.rpc.*, UIComponet и ListBase.
mx.collections.* - это просто насмешка над названием, если вы думали, что найдете там List / Set / Map / Tree - вы глубоко ошиблись. Во всем фреймворке есть всего одна штука коллекций, и та не работает - ListCollectionView - все остальные - это ее производные. Эта коллекция смесйь cocoa Array + ECMA Array в которую еще ухитрились запихать кучу IPE (это наверное, чтобы если тормозить, то так чтобы аж искры сыпались), ну и кроме базируется она на генерации UID для каждого элемента (т.е. все операции над элементами подразумевают, что что бы вы в коллекцию не положили, оно должно так или иначе иметь UID. Есть еще интерфейс к этой коллекции, но т.как разработчики фреймворка не предполагали, что этот интерфейс кто-то будет имплементить, то, заимплементить его не возможно по-нормальному.
mx.binding.* - на первый взгляд опупенная фича... Но, попробуйте забиндить несуществующее свойство, или сеттер с ошибкой - и насладитесь всей гаммой позитивных эмоций
Вам показалось недостаточно - попробуйте высвободить память занятую биндингами.
mx.styles.* - вы соскучились по JavaScript, нетипизированому доступу, куче неизвесно откуда взявшихся свойств, значениям неопределенных типов? Конечно же, фреймворк поможет вам заглянуть на секундочку в прошлое! А кроме этого напихает вам кучу строк неопределенного назначения в метадату, увеличив размер вашей SWF ну так процентов на 10-20.
mx.rpc.* - ну, стоит ли еще раз вспоминать о нетипизированом доступе, куче каких-то ненужных классов типа AsyncToken призванных "облегчить работу тем, кто до сих пор не освоился с асинхронной природой Флеша". Конечно, проще всего похоронить всю логику в классах, которые трудно пропатчить и не возможно наследовать!
UIComponet - монументальное сооружение! Я даже из спортивного интереса так и не смог доскроллить этот класс до конца, сломался после 10 тыс. строк где-то. У вас что-то не работает, и причина кроется где-то в этом классе - можно просто забыть о попытках что-нибудь пофиксить.
ListBase - как уже говорилось, разработчики флексового фреймворка считают, что самый надежный способ идентифицировать объект в коллекции, это присвоить ему строковый идентификатор вида A227A6E8-B517-2D0C-0366-1EA1F635CB56. Кроме того, разработчики фреймворка считают, что багнутость E4X XML и недоделоность Array - им не помеха, и их вполне можно использовать в качестве data provider. Кстати, этот класс по размерам только немного уступает UIComponent.
Ну, а все остальное - да, замечательно