Iterative ProgrammierungDie iterative Programmierung (von lat. iterare = wiederholen) ist ein Konzept, bei dem mehrfach auszuführende Arbeitsschritte in Schleifen (Wiederholungen von Anweisungen oder Anweisungsfolgen) umgesetzt werden. AbgrenzungAndere Programmierkonzepte sind
GegenüberstellungIn der Literatur werden Funktionen gerne im rekursiven Programmierstil vorgestellt, die meist als einfacher zu verstehen gelten. Bei rekursiver Programmierung wird die Wiederholung erreicht, ohne dass das Programm explizite Schleifen enthält.[1] Anstatt Schleifenkontrollanweisungen enthält das Programm sogenannte (direkte) Selbstaufrufe der betreffenden Funktion oder auch indirekte gegenseitige Aufrufe mehrerer Funktionen untereinander. In beiden Fällen, iterativer wie rekursiver Programmierung, bedarf es normalerweise einer expliziten Abbruchbedingung, die eine Terminierung des Programms erzwingt, wobei Fehler in derselben zu unbeabsichtigten Endlosschleifen führen können. Iterative Implementierungen bieten oft Vorteile:
Mit wachsender Leistungsfähigkeit der Rechner tritt jedoch die Lesbarkeit und Wartbarkeit von Software gegenüber ihrer technischen Effizienz in den Vordergrund. Wo dies der Fall ist, bietet sich der rekursive Ansatz für die Arbeit mit baumartigen Datenstrukturen und der iterative für sequenzielle Datenstrukturen an. BeispielEin Beispiel für die iterative Programmierung ist ein Datenbankdurchlauf (Pascal) durch die Datensätze („Zeilen“) von (der „Tabelle“) procedure Durchlauf;
begin
while not Dataset.Eof do ! wiederhole_solange Tabelle Dataset nicht „zu Ende“ ist
begin ! den hier beginnenden Befehlsblock
Befehl1;
Befehl2;
Befehl3;
Dataset.Next; ! Schalte weiter zum nächsten Datensatz (nächste „Zeile“) von Dataset.
end;
end;
Dabei werden die Befehle 1 bis 3 solange wiederholt, bis alle Datensätze durchlaufen wurden. Anmerkungen und Einzelnachweise
|