in reply to Advice please on variable naming style in modules

I tend to use $me not $self. Then the parent might become $dad or $mom.

But even better is to describe the role rather than just the position in some hierarchy. So call the App $self only inside the App package and call it $app everywhere else. Call the Widget $self only in the Widget class and call it $widget everywhere else. Call the Menu $self only in the Menu class and call it $menu everywhere else.

my( $class, $self ) in your examples looks mostly confusing to me. I'd much rather see "return $app;" so I will more quickly realize that the Menu c'tor is returning a container, not the new menu. Actually, it looks like you even managed to confuse yourself here because the Widget c'tor is supposed to return the new $widget, not the App that is stored in the (confusingly named) $self.

- tye        

  • Comment on Re: Advice please on variable naming style in modules (role > pos)
  • Download Code

Replies are listed 'Best First'.
Re^2: Advice please on variable naming style in modules (role > pos)
by isync (Hermit) on Aug 22, 2012 at 14:35 UTC
    Yes, your comment is what I hoped for is (one) good practice: $self only in the class itself, everywhere else according to function...

    (And you are right: managed to confuse myself in the example, and edited the original post: App::Widget now returns $widget...)