I agree with your statement "there really is a long way to go to make 
this framework component developer friendly" in fact I wonder how 
much thought has really been given to the use of the framework by 
component developers (as opposed to application developers who create 
components) outside of adobes own developers themselves.

Given that you dont see much difference between public and protected 
and given there are so few protected vars and function as to be 
almost irrellevant for a comp developer you could make all the 
current protecteds public and then use protected for most of the 
private vars that can then be used by lunatics like me who need to 
develop sophisticated component at a low level and are willing to 
accept the API might change in a future release. -- take that tongue 
in cheek --

I would also add that given weve had 4 completely different component 
API's in 4 years from adobe that make me somewhat sceptical about 
being so concerned about protected APIs being cast in stone.

Anyway TGIF... time for a beer...

tks







--- In [email protected], "Michael Labriola" 
<[EMAIL PROTECTED]> wrote:
>
> I can't believe I am actually going to write this.
> 
> You see, I have probably done more, uhm, `complaining' about the 
flex 
> framework and the private variables than even I care to remember. 
> With minor exception I have been doing flex component development 
> fulltime in one form or another since Flex 1.
> 
> When 2.0 came about and I was suddenly restricted by private 
> variables, I nearly lost it. Back in the 1.5 days, we had a 
component 
> library of about 120 pieces and already knew that was going to 
triple 
> going into 2. Not being able to easily extend these classes with 
> private members added almost 200% to our original project cost and 
I 
> was less than happy. Even today there is still significant cost 
> associated with it and eliminating this practice in favor of 
> protected would allow us to be more effective and productive 
> component developers. 
> 
> All of that said, I do realize and support (now) the mantra that 
has 
> been put forth by the flex team. Any time a method or property is 
> exposed outside of a class (for this part of the argument there 
> really isn't a difference between public or protected) you have 
> defined an interface. Implicitly you have told developers to use 
> these methods and properties. 
> 
> That is a dangerous door to open as personally I want my components 
> to function on future frameworks and hence I want that interface to 
> stay exactly the same. So, I guess I am personally saying that I 
> believe it is worse for me as a component developer, but better for 
> the Flex community to have stability across releases.
> 
> Now, truthfully, there really is a long way to go to make this 
> framework component developer friendly and many of the pieces, 
IMHO, 
> should have some sort of name space option. (P.S. I am not against 
> having to write use namespace 
SeriouslyThisPartIsGoingToChangeMoron; 
> to get what I need) but that is for another day and another time.
> 
> I still can't believe I just admitted that,
> Mike
> 
> 
> --- In [email protected], Bjorn Schultheiss 
> <bjorn.schultheiss@> wrote:
> >
> > Fair enough,
> > 
> > The argument of change has been put forward and i guess that 
> strikes  
> > a cord in most developers.
> > And Flex 3 is open-sourced and we can do whatever to the SDK, 
> beautiful.
> > 
> > IMO, the point is quite clear.
> > Private members kill the idea of a truly extensible framework 
and  
> > makes component development a pain.
> > 
> > 
> > my two cents
> > 
> > Bjorn
> > 
> > On 15/06/2007, at 12:20 PM, Josh Tynjala wrote:
> > 
> > > Agreed.
> > >
> > > As a component developer, I understand how many of you guys 
are  
> > > frustrated that it can be difficult to extend the existing 
Flex  
> > > components. I've been there myself, and it can be time 
consuming 
> to  
> > > find the right workaround. However, I fully support Gordon's  
> > > reasoning for the private variables and things.
> > >
> > > I have a feeling that most custom components built for Flex 
> 2.0.1  
> > > will be able to easily transition to Flex 3 with only minor  
> > > changes. If all the variables and functions went from private 
to  
> > > protected or mx_internal, you'll find yourself facing many 
more  
> > > changes from one version to the next. In fact, it could be 
much  
> > > worse because such an open architecture might mean that you'll 
> have  
> > > to fully recreate your component from scratch. Right now, I 
know  
> > > that items that are public or protected probably won't change 
> much  
> > > if at all, and I like that safety.
> > >
> > > My two cents.
> > >
> > > -Josh
> > >
> > > Gordon Smith wrote:
> > >>
> > >> Object-oriented languages support private access because 
hiding  
> > >> implemention details is essential to producing evolvable code. 
> We  
> > >> try to figure out what the "interface" of a class should be, 
> and  
> > >> we expose that and no more. Otherwise the class becomes so 
> brittle  
> > >> that we can't change it without breaking compatibility...  
> > >> "Somebody might be calling foo() and it still has to do 
exactly  
> > >> what it did in 2.0.1 or their code will break." An alarmingly  
> > >> large percentage of our time is already spent on that kind of  
> > >> compatibility issue.
> > >>
> > >> If you can find a book on OO design that says "Make 
everything  
> > >> public unless you have a great reason for it to be private", 
> I'd  
> > >> like to know about it.
> > >>
> > >> IMHO, we've done a good job of exposing the right APIs for  
> > >> application developers, but a poor job of exposing the right 
> ones  
> > >> for component developers. We need to understand much more 
about  
> > >> how and why developers are extending our components in order 
to  
> > >> get the balance right.
> > >>
> > >> Making the framework brittle and unevolvable is one the 
> quickest  
> > >> ways I can think of to kill Flex.
> > >>
> > >> - Gordon
> > >>
> > >> From: [email protected]  
> > >> [mailto:[EMAIL PROTECTED] On Behalf OfBjorn 
> Schultheiss
> > >> Sent: Thursday, June 14, 2007 6:39 PM
> > >> To: [email protected]
> > >> Subject: Re: [flexcomponents] Re: Private vs Protected
> > >>
> > >>
> > >>
> > >> On 15/06/2007, at 11:25 AM, reflexactions wrote:
> > >>> For a trully extensible framework that is supposed to form 
the 
> basis
> > >>> of this whole platform it shouldnt be left that developers 
need 
> to
> > >>> justify WHY something should be protected, it should be for 
the
> > >>> framework author to justify WHY something is private.
> > >>
> > >>
> > >> I love it!!!
> > >>
> > >> That 'play it safe' line was lame.
> > >> Use that one for the boss but not for us, the poor devs who 
> might  
> > >> actually need to reference the private member.
> > >>
> > >>
> > >> regards,
> > >>
> > >> Bjorn
> > >>
> > >>
> > >
> > >
> > > 
> > 
> > Regards,
> > 
> > Bjorn Schultheiss
> > Senior Developer
> > 
> > Personalised Communication Power
> > 
> > Level 2, 31 Coventry St.
> > South Melbourne 3205,
> > VIC Australia
> > 
> > T:  +61 3 9674 7400
> > F:  +61 3 9645 9160
> > W:  http://www.qdc.net.au
> > 
> > ((------------This transmission is confidential and intended 
> solely  
> > for the person or organization to whom it is addressed. It may  
> > contain privileged and confidential information. If you are not 
> the  
> > intended recipient, you should not copy, distribute or take any  
> > action in reliance on it. If you believe you received this  
> > transmission in error, please notify the sender.---------------))
> >
>


Reply via email to