Thread Routinen erzeugen (18 answers)
Opened by bloonix at 2007-01-30 16:53

Strat
 2007-02-02 12:23
#73855 #73855
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
To strict or not to strict: wenn man gut begruenden kann, wieso man strict fuer eine Anweisung deaktiviert (und das dann auch dokumentiert oder kommentiert), sehe ich da kein Problem.

Ich wuerde sowas auch on-the-fly machen, weil ich es fuer unnuetz halte, da x Mal dieselbe Routine mit minimalen Veraenderungen zu schreiben, und es gut kommentieren. So braucht der arme Kerl, der das mal erbt, nur ein paar Kommentare lesen, als sich durch eventuell eine Menge Code zu quaelen, bevor er zu dem Schluss kommt, dass der eh alles das gleiche macht.
Die Liste der Subroutinen wuerde ich allerdings in ein Array (oder sogar in eine Config) auslagern, weil es dann bei Erweiterungen einfacher handelbar wird.


Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
# config
our @AutoGeneratedSubroutineNames = qw( foo bar );

# dann irgendwo weiter unten...
for my $subName ( @AutoGeneratedSubroutineNames ) {

# verankere vorgenerierte Subroutinen ueber symbolische Referenz
# in der Symboltabelle (Sub::Install ist leider kein Standardmodul):
no strict 'refs';
*$subName = sub { my $self = shift; $self->foobar($subName, @_); };

} # for @AutoGeneratedSubroutineNames

Aber die Schreibweise $Package::{$_} = sub {...}; finde ich trotzdem schoener...\n\n

<!--EDIT|Strat|1170411843-->
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/

View full thread Routinen erzeugen