Thread Freaktreffen München 17/18.4.2004 (279 answers)
Opened by Strat at 2004-02-02 11:04

Crian
 2004-04-19 19:53
#86264 #86264
User since
2003-08-04
5873 Artikel
ModeratorIn
[Homepage]
user image
[quote=Alex,19.04.2004, 12:57]Hi, nur ganz kurz (habe Streß),

Crian, dass hast Du ganz gut beschrieben.

Auch mir hat es besonders gut gefallen - es hat mich sehr gefreut einige von Euch mal live kennen zu lernen.

Später mehr, logo ist unterwegs.[/quote]

Ich weiß schon, das und warum Du Streß hast ...
Es freut mich aber sehr, dass es Dir auch gut gefallen hat, schließlich warst Du ja der Sponsor und Gastgeber :)

[quote=Strat,19.04.2004, 16:59]habe Crian's Beitrag mal mit den Bildern, die ich geschossen habe, angereichert, und nach http://www.perl-community.de/freaktreffen/2004/ hochgeladen[/quote]

Schick :)

Schickst Du mir die Bilder (ich nehme mal an sie sind im Original größer)? Dann würde ich sie noch überarbeiten (aufhellen, etc.) und an meine anpassen, wenn Dir das recht ist und dann alle Bilder mit einem nochmal in Ruhe überarbeiteten und erweiterten Text zusammensetzen.
Wenn noch jemand von Euch etwas schreiben möchte, füge ich das da auch gerne ein...




Hier nochmal ein Nachtrag zum OOP-Vortrag zum Thema Getter / Setter. Wir haben ja die AUTOLOAD Variante gesehen (und die Vor- und Nachteile besprochen) und dann die Variante im BEGIN-Block, auch nett.

Dies ist eine weitere Variante. Sie hat den Nachteil gegenüber Strats Variante im Begin-Block, das jedesmal ein Funktionsaufruf mehr durchgeführt wird. Dafür ist es vielleicht etwas leichter verständlich, hoffe ich:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
sub _property ($$;$) {
#------------------------------------------------------------------------------
# sub          : _ p r o p e r t y
#------------------------------------------------------------------------------
# Autor        : CD
# Aufgabe      : Private Funktion zur einfachereren Erstellung von Gettern
#                und Settern.
# Parameter    : Attribute, Parameter
# Rückgabewert : Der aktuelle Wert (Getter) oder der alte Wert (Setter) des
#                gegebenen Attribute.
#------------------------------------------------------------------------------
# 0.0.1 - 13.10.2003 - CD - Erstellt
#------------------------------------------------------------------------------

   my $self   = shift;    # object
   my $attr   = shift;    # attribute to get or set
   my $setter = @_ == 1;  # is this method used as a setter?
   my $value  = shift;    # value for the setter

   # if we use "if (defined $value)" here, we can't set the values
   # to undef! So we have to use this:
   if ($setter) {
       my $old_value = $self->{$attr};
       $self->{$attr} = $value;
       return $old_value;
   }
   else {
       return $self->{$attr};
   }
} # sub _property


#------------------------------------------------------------------------------
# The getter/setter methods:
#------------------------------------------------------------------------------
sub string      ($;$) { return shift->_property('string',      @_) }
sub original    ($;$) { return shift->_property('original',    @_) }
sub doppelvn    ($;$) { return shift->_property('doppelvn',    @_) }
sub doppelnn    ($;$) { return shift->_property('doppelnn',    @_) }
sub doppelen    ($;$) { return shift->_property('doppelen',    @_) }
sub attribute   ($;$) { return shift->_property('attribute',   @_) }
sub namensicher ($;$) { return shift->_property('namensicher', @_) }


Dafür kann man hier auch Attribute auf undef setzen (die Idee könnte man aber auch in die anderen beiden Varianten genauso übernehmen).

Die Funktion stammt ursprünglich aus dem Buch "Professional Perl Programming" von Wainwright et al, das ich eigentlich am Wochenende mitnehmen wollte, hab ich leider vergessen.\n\n

<!--EDIT|Crian|1082390313-->
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite

View full thread Freaktreffen München 17/18.4.2004