in reply to
Mutator chaining considered harmful
The advantage of returning $self is that the user of the code is free to decide to use either style, that is:
If you don't return $self
, you're taking the decision for the user. Which isn't very friendly.
Now, I don't have a problem with
If I see this code, and I've no idea what the title
methods are, my assumption will be that the title of the window is set to foo
, and the border will be 20
pixels wide. I don't see the problem either, unless you have windows with labelled titles, so that there's the possibility that $window->title('foo')
returns the 'foo' title.
I probably won't do the chaining as you give. I'd probably write it as:
my $button = $window->child->border(20);
my $label_formatting = $button->child->font_style;
But I will return $self from accessors.