Hi,

>Isn't this what happens to every single inherited behavior? Aren't
>components created with this in mind? To provide multiple options on
>case-by-case scenario?


Well, the enabled setter is a functionality, the default behavior of this 
functionality should be suit for common use case not edge case.

Encapsuling edge case behavior to a functionality of a class is not good for 
post-maintenance.

I like Tom's idea, by writting an EnableHelper controller class to solve this 
case is much better than adding edge behavior for the enabled setter of 
SkinnableComponent.

DarkStone
2014-07-17


At 2014-07-17 07:58:12, "João Fernandes" <joaopedromartinsfernan...@gmail.com> 
wrote:
>On 17 July 2014 12:43, DarkStone <darkst...@163.com> wrote:
>
>> Hi
>>
>> >I repeat, my plan is to keep the current behavior as the default, only if
>> >you enable the new functionality trough a flag/style/whatever...
>> Ok, I got your idea. Adding through a flag/style/whatever is doable, but
>> from the perspective of the program design, it's not a very good idea.
>>
>
>Isn't this what happens to every single inherited behavior? Aren't
>components created with this in mind? To provide multiple options on
>case-by-case scenario?
>
>
>>
>> I mean today you may want to add this new behavior through a
>> flag/style/whatever, and the other day you may want to add another
>> behavior, then would you add another flag/style/whatever?
>>
>
>Again, why all components have multiple properties? Aren't those to
>consider a behavior? Unfortunately this isn't FlexJS where this kind of
>behaviors are split in different beads.
>
>
>>
>> As a result, the SkinnableComponent might have multiple behaviors to one
>> functionality (e.g. different behaviors of 'enabled' setter), this is not a
>> very good program design.
>>
>> But after all, this is just my own opinion, others may disagree with me.
>>
>> Before making any changes to the source code, it's best that we can have
>> more people to share their thoughts on this approach, don't you think : )
>>
>>
>> DarkStone
>> 2014-07-17
>>
>>
>>
>-- 
>
>João Fernandes

Reply via email to