Carol, think of any number between 1 and 100, and I will find that number of public or protected properties or methods that have not been documented, and, instead were using @private ASDoc comment. Ideally, that might have been as you describe it, but in practice it was very far from that. (I only need to think of a grep or sed that would do that :D)
> Substantial amount of time was spent on ... names. Not trying to be sarcastic, but names like TreeDataDescriptor2 don't really fall under "well thought through" category. But that's quire rare (there are only about 5 or so classes that end with "2" in the framework). ArrayCollection, which is not a collection per se, is way more severe. Besides, I gave a particular example, where mx_internal was used to cover poor design - there is a simple, efficient generic solution to replace it - save objects into a dictionary, and you don't need to add a property to keep their id on them. Another example - all sorts of controls containing inner controls, such as, for example, numeric stepper, text area and so on, which contain a text field would use some mx_internal::textField to access the text field, and you would run up the wall trying to understand where do the values comes from, if you extended the control. It was also some times used as "public Morozov" anti-pattern :) this one is named after a http://jamesdolan.blogspot.com/2011/05/pavlik-morozov-anti-pattern.htmli.e. when the originally protected field would be exposed outside in the inheriting class.