Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]12301[/thread]

ObjectTemplate

Leser: 1


<< >> 4 Einträge, 1 Seite
theresa
 2008-08-05 23:58
#113130 #113130
User since
2007-07-17
90 Artikel
BenutzerIn
[default_avatar]
Hallo,
habe Class::ObjectTemplate benutzt. Soweit ich es verstanden habe, soll das Modul dabei helfen, Objekte vereinfacht zu erzeugen.

Um auf (Instanz)Felder zuzugreifen (die, die mit attributes(...) deklariert werden), muss in jeder Methode erstmal $self als Parameter abfragen, dann mit $self->feld auf die Felder zugegriffen werden. Irgendwie kommt mir das umständlich vor. Weiß nicht ob das besser geht.

Ohne ObjectTemplate wird ein Hash dafür benutzt... da muss man auch erstmal die ObjectReferenz abfragen usw...

Gibt es einen besseren Ansatz, gibt es Fälle wo einer geeigneter ist als der andere... was benutzt ihr normalerweise...?
Struppi
 2008-08-06 00:47
#113131 #113131
User since
2006-02-17
628 Artikel
BenutzerIn
[Homepage]
user image
Das ist richtig, im Prinzip könnte man auch ein Hash verwenden.
Aber hier geht es um OOP, du hast ein Objekt und nutzt Funktionen/Methoden um auf die Eigenschaften zu zugreifen, das nennt man Kapselung. Anderseits kannst du mehrere Objekte mit den gleichen Eigenschaften erzeugen und einen Konstruktor verwenden um z.b. Parameter für das Objekt zu übergeben. Und um u.a. diese Konzepte der OOP um setzen, sparst du dir einen Haufen Tipparbeit mit solchen Modulen. Ich benutze was selbstgeschriebenes, wo ich hinterher gemerkt habe, dass es Class::Accessor entspricht.
Escape
 2008-08-06 01:32
#113133 #113133
User since
2008-07-24
312 Artikel
BenutzerIn
[default_avatar]
Larry Wall schrieb mal (sinngemäß):
Objekte sind langsam aber dafür auch clever.
Doch würden Sie Objekte verwenden wenn Sie schnell sein wollen?

Gilt das auch heute noch?
Die Deutsche Rechtschreibung ist Freeware; Du darfst sie kostenlos nutzen – aber sie ist nicht Open Source, d.h. Du darfst sie nicht verändern und/oder in veränderter Form veröffentlichen.
pq
 2008-08-06 11:37
#113143 #113143
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
dass zugriffe auf methoden langsamer sind als auf einen hash direkt, nehme ich in kauf.
es gibt allerdings situationen, wo ich mir genau überlege, nehme ich hier objekte oder
doch eine simple datenstruktur, wenn ich grosse datenmengen zu verarbeiten habe.
das muss man halt immer abwägen, aber in den meisten fällen macht man sich wohl
zuviel gedanken um die performanz.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
<< >> 4 Einträge, 1 Seite



View all threads created 2008-08-05 23:58.