Thread Techniken für Plugin-Einbindung
(3 answers)
Opened by marky at 2011-09-24 12:58
Hallo,
ich mache das ganz anders, die Hooks über die Signale könnte man noch ändern, das muss ich mal anschauen, wie man das am besten implementiert, die Tempalte-Plugins laufen so Code: (dl
)
1 while ( $tmpl_line =~ /\[OS_TMPLPLUGIN:(\w+):(\w+):(.*?)\]/g ) { dann muss man nicht den Code evaluieren. Und die Plugins an sich sehen alles gleich aus vom Aufbau. Das andere habe ich jetzt noch etwas anders gelöst und zwar über AUTOLOAD, meine Frage dabei ist jetzt, dass man immer liest, dass AUTOLOAD teuer ist - ist das aber immer noch so - in der jetztigen Lösung würden quasi die Funktionen immer über AUTOLOAD laufen. Siehst Du ein Problem, was die Performance angeht? Die Lösung ist nämlich wirlich genial. Ist nur ein bisschen viel zum Posten, aber jetzt gibt es die Möglichkeit, ein Plugin vor und nach der Funktion auszuführen und die Funktion selber zu überschreiben. Hier mal das Autoload Code: (dl
)
1 sub AUTOLOAD { Das ist mal wirklich eine sehr sehr flexible Lösung, aber halt mit AUTOLOAD erkauft, die alternative wäre nur, dass man eine exec-Funktion macht, dann muss aber jede Funktion über die exec aufrufen, was vom Code her nicht so transparent aussehen würde, anstelle von $pobj->t1('T1T1T1') ; dann $pobj->exec('t1','T1T1T1') ; und man könnte auf das AUTOLOAD verzichten, das scheint mir aber ein bisschen exotisch zu sein. Gruss Marky Mfg
Markus - http://www.perlunity.de - |