Thread OOP: Instanz ja oder nein (10 answers)
Opened by rosti at 2012-12-07 10:37

topeg
 2012-12-07 12:16
#164024 #164024
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
Warum sollte ich in meinen Methoden mit die hantieren und alles in eval packen, wenn ich auch einfach in $self->{error} eine Meldung setzen und undef leifern kann. Dazu habe ich eine Methode error{ref($_[0])?$_[0]->{error}:$error} habe. eval ist nur ein weiter (langsamer) Schritt den ich einschiebe, aber nicht brauche.

Wenn ich fremde Sachen benutze und nicht weiß was darin passiert nutze ich eval wenn ich nicht will, dass das Programm unterbrochen wird.

Edit:

ich habe häufig kombinierte Getter/Setter und undef als eingetragenen Wert:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
my $error='';
sub _val
{
  my $self=shift;
  my $key=shift;
  if(@_)
  {
    $self->_error();
    my $val=shift;
    unless($self->{sonstwo}->set($key => $val))
    { $self->_error("Can't set $key => $val"); }
  }
  return $self->{sonstwo}->get($key);
}

sub ein_wert { shift->_val('ein_wert', @_); }
sub noch_ein_wert { shift->_val('noch_ein_wert', @_); }

sub _error { shift->{error}=shift//''; }

sub error{ref($_[0])?$_[0]->{error}:$error}


Da muss man, wenn es interessiert, if($obj->error()){...}, machen.
Last edited: 2012-12-07 12:30:12 +0100 (CET)

View full thread OOP: Instanz ja oder nein