![ein Kapitel weiter](../weiter.gif)
Was sind Unterprogramme und wozu benötigen wir diese? Unterprogramme sind wie schon in anderen Programmiersprachen nichts anderes als
ein mit Namen, mit vorangestellten Schlüsselwort sub, versehener Anweisungsblock.
Also einfach Funktionen.
sub ICH_BIN_EINE_FUNKTION
{
#Anweisung(en) was die Funktion machen soll
}
Hierzu ein kurzes Beispiel......
#!/usr/bin/perl -w
sub function #Beginn der Funktion function
{
print "Ausgabe in der Funkion \"function\"\n"; #Was die Funktion macht
} #Ende der Funktion function
print "Wir rufen nun die Funktion \"function\" auf\n";
function(); #Wir rufen die Funktion function auf
print "Jetzt nach dem Funktionsaufruf\n";
Mit dem Schlüsselwort sub weiß unser Perl-Interpreter, aha hier ist
also eine Funktion.
sub heißt soviel wie subfunction (Unterfunktion) was für den Perl-Interpreter nichts anderes heißt als das er diese Funktion nur ausführt wenn sie auch aufgerufen wird. Und wie wir eine Funktion aufrufen haben sie gesehen mittels.....
function();
In Perl gibt es außer dieser Methode Funktionen aufzurufen noch folgende Schreibweisen.......
&function;
&function();
function;
Alle 4 Möglichkeiten liefern das selbe Ergebnis. In unserem Fall macht unsere Funktion
eine Textausgabe mittels print auf die Standardausgabe.
Gut aber wozu sollen Funktionen jetzt gut sein? Ich zähle folgende hervorhebende Punkte dazu auf.....
- Code kann immer wieder verwendet werden. Anstatt ein und die selbe Routine
immer wieder zu schreiben kann man sie einfach per Copy und Paste in anderen
Programmen wiedereinbauen. Oder gar eigene Module erstellen.
- Fehler werden schneller gefunden da Programm übersichtlicher ist.
- Bei Veränderung eines Programms muss nicht der ganze Code umgeschrieben werden sondern meist
nur eine einzelnen Funktion.
Dies sind nur einige Punkte welchen Vorteil Unterprogramme haben. Weitere werden sie
im laufe dieser Kapitel selbst bemerken.
Wir haben übrigens schon seit dem "Hello Wordl" - Perl-Programm Funktionen
verwendet. Beispielsweise print ist auch nichts anderes als eine Funktion.
![ein Kapitel weiter](../weiter.gif)
© 2001,2002 Jürgen Wolf
|