Effektiv programmierenPerl

Neben einigen neuen Befehlen wird in diesem Kapitel vor allem das effektive Programmieren bezogen auf die Schnelligkeit eines Programms wert gelegt.

Einleitung

SeitenanfangSeitenendeEffektiv oder lesbar?

Es gibt unter den Perlprogrammierern zwei Richtungen von Programmierstilen - der eine ist "lesbar programmieren" und der andere "effektiv programmieren". Möchte man, dass ein Programm lesbar bleibt (das Programm ohne Kommentare ist hier gemeint), so kann dies auf Kosten der Effektivität (Schnelligkeit) gehen und umgekehrt. Ein Beispiel:

$a=(split(/\w+/, $string))[2]; # lesbar

($a)=$string=~/^\W+\w+\W+\w+(\W+)/g; # effektiver

Beide Lösungen sind richtig und liefern das gleiche Ergebnis. Der Unterschied: Den ersten Ausdruck kann man leichter lesen als den zweiten. Letzterer ist dafür schneller.

SeitenanfangSeitenendeEntscheidung für was ...?

Man sollte sich in der Regel vorher entscheiden, was man wirklich will - ein schnelles Programm oder ein leicht lesbares? Hier ein paar Szenarien:

  1. Wir möchten ein Perlprogramm ins als CGI-Skript laufen lassen, um ... auf dem Server auszuführen.
  2. Ein Perlprogramm um Text zu verändern.
  3. Das Programm wird nur einmal gebraucht.
  4. Ich bín der einzige, der damit arbeitet - aber öfter.

Im ersten Fall ist es sicherlich sinnvoll, ein schnelles Programm zu entwerfen, da man dadurch den Server entlastet. Klar! Will man wie in (2) nur Text ändern in einer oder mehreren Dateien, dann ist es sinnvoll etwas lesbar zu programmieren - oder effektiv und dann reichlich kommentiert. Wird das Programm nur einmal gebraucht (3) dann ist es am besten, man denkt vorher über solche Probleme erst gar nicht nach und programmiert munter drauf los - falls man weiß, was man programmieren möchte! Im letzten Fall würde ich es einfach so gestalten, wie man es am liebsten hat - ich bevorzuge das schnellere. Ich habe mir angewöhnt schnelle und gut kommentierte (das bedeutet nicht unbedingt viel kommentierte) Programme zu schreiben.

SeitenanfangSeitenendeUmständlich oder einfach?

In Perl ist so ziemlich viel möglich; d. h. man kann ein recht einfaches Programm auch kompliziert gestalten. In vielen Fällen erlaubt Perl recht schnelle und übersichtliche Programmierung. Das heißt, dass man in ziemlich wenig Zeilen schreiben kann, was man will.Es ist nur eine Gewöhnungssache, wenn man weiß wie es geht.

Perl hat besitzt eine Vielzahl von speziellen Abkürzungen und Konstrukte - die einen das Programmieren recht vereinfachen. Auch diese sollte man sich schnell aneignen, da sie alle benutzen (sollten) und auch sinnvoll sind.


Seitenanfang FehlermeldungHilfe zur Fehlermeldung © 2001-2003 Email an den AutorPerl, Lehrstuhl Mathe II, Uni Bayreuth