- Strukturierte Programmierung
-
Strukturierte Programmierung ist ein programmiersprachenübergreifendes Programmierparadigma, das Anfang der 1970er Jahre auch aufgrund der Softwarekrise populär wurde. Es beinhaltet zum einen die baumartige Zerlegung eines Programms in Teilprogramme (Prozeduren) und enthält somit das Paradigma der prozeduralen Programmierung. Zudem verlangt die strukturierte Programmierung auf der untersten Ebene die Beschränkung auf lediglich drei Kontrollstrukturen:
- Sequenz (hintereinander auszuführende Programmanweisungen)
- Auswahl (Verzweigung)
- Wiederholung (Schleifen)
Die bekannteste Konsequenz dieses Prinzips ist die Vermeidung oder – abhängig von der Programmiersprache – der eingeschränkte und standardisierte Einsatz der Sprunganweisung, des GOTO. Das Ergebnis der häufigen Verwendung dieser Anweisungen wird häufig abfällig als Spaghetticode bezeichnet.
Inhaltsverzeichnis
Wegbereiter
Ein Wendepunkt hin zur strukturierten Programmierung war sicherlich der legendäre Aufsatz „Go To Statement Considered Harmful“ von Edsger W. Dijkstra aus dem Jahr 1968. Neben anderen war Niklaus Wirth mit dem Entwurf der Programmiersprache Pascal ein Wegbereiter der strukturierten Programmierung.
Strukturierte Programmiersprachen
Auch wenn strukturierte Programmierung prinzipiell in allen Sprachen möglich ist, sogar in Assembler, ist es sicherlich vorteilhaft, eine prozedurale Sprache zu verwenden. Mit wachsender Verbreitung der strukturierten Programmierung wurden auch Sprachen entwickelt, die Elemente enthalten, die die strukturierte Programmierung unterstützen, und solche weitestgehend eliminieren, die nicht diesem Programmierstil entsprechen. Folgende Programmiersprachen eignen sich unter anderem zur strukturierten Programmierung:
Heutiger Einsatz
Strukturierte Programmierung ist heute in fast allen Bereichen, in denen professionell Software entwickelt wird, eine Selbstverständlichkeit. Die neueren Programmierparadigmen wie generative Programmierung, aspektorientierte Programmierung oder objektorientierte Programmierung bauen auf der strukturierten Programmierung auf und erweitern oder ergänzen diese.
Siehe auch
Literatur
- Ole-Johan Dahl, Edsger Wybe Dijkstra, Tony Hoare: Structured Programming. Academic Press, London 1972, ISBN 0-12-200550-3.
Weblinks
- David R. Tribble: Go To Statement Considered Harmful: A Retrospective (einschließlich Originalaufsatz von Dijkstra mit Anmerkungen von Tribble)
Wikimedia Foundation.