When you start working with the v2 core classes, one of the first thing you’ll notice is that nothing is declared as public or private, everything is just defaulted to public. This alone degrades much of the value of OOP and encapsulation and the new static typed compiler in Flash MX 2004 as it relates to v2 components. Well, today I found another problem.
Most of the functions have comments attached to them. Many of these have a comment that says “@private” which seems to indicate the function is private. So, even if the compiler can’t know which functions are intended as public and private, we can find out and program responsibly.
However, some functions marked as private are actually used as public. For example, StylesManager.isColorStyle() is commented as private but is used within UIObject.getStyle().
So how do we know which are really supposed to be public and which are really supposed to be private? We need to read all of the v2 code and cross-reference every function and that will at least tell us how MM uses them. Of course, Flash MX 2006 might be out by the time you’re done figuring it all out…