Thread Organisation von Klassen und Modulen auf der Festplatte
(6 answers)
Opened by der_thomas at 2016-03-12 22:19 Quote Falsch. Es ist unerheblich, ob in Foo.pm ein package-statement steht, und welcher package-name es ist. Damit use Foo; funktioniert, muss das Ding nur kompilieren und einen wahren Wert zurückliefern. Will man objektorientiert arbeiten, wird der Packagename wichtig, ja. Quote Diese Aussage (nur einmal eingetragen) ist doch hier nur verwirrend. Hättest du ausführlich die manuelle Manipulation von @INC erklärt, wäre das erwähnenswert. Aber der wichtigere Unterschied, der dann zu erwähnen wäre, ist, dass man mittels "use lib" @INC zur compile time ändert, während man bei manueller Manipulation von @INC einen BEGIN-block schreiben muss (oder alternativ das Modul zur Laufzeit laden muss). Quote Das ist einfach nur falsch. Es gibt keinen Automatismuss, wonach Foo::Bar von Foo erbt. Du erwähnst oben "use Modulname" und "use lib". In deinem Beispiel unten schreibst du aber das eigentliche Skript mit in die Moduldatei, wodurch "use Number" und auch "use lib" unnötig wird. Das ist aber in der Praxis später selten sinnvoll. Aber wozu dann überhaupt die Erwähnung oben, wenn du es im Beispiel gar nicht anwendest? Last edited: 2016-03-13 13:38:19 +0100 (CET) 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: Wie frage ich & perlintro brian's Leitfaden für jedes Perl-Problem |