www.wikidata.de-de.nina.az
Strukturierte Programmierung ist ein programmiersprachenubergreifendes Programmierparadigma aus den 1960er Jahren also noch vor der Softwarekrise Es beinhaltet zum einen die baumartige Zerlegung eines Programms in Teilprogramme Prozeduren und enthalt somit das Paradigma der prozeduralen Programmierung Zudem verlangt die strukturierte Programmierung auf der untersten Ebene die Beschrankung auf lediglich drei Kontrollstrukturen Sequenz hintereinander auszufuhrende Programmanweisungen Auswahl Selektion Verzweigung Wiederholung Iteration Schleifen Die bekannteste Konsequenz dieses Prinzips ist die Vermeidung oder abhangig von der Programmiersprache der eingeschrankte und standardisierte Einsatz der Sprunganweisung des GOTO Das Ergebnis der haufigen Verwendung dieser Anweisungen wird haufig abfallig als Spaghetticode bezeichnet Durch die konsequente Implementierung von Teilprogrammen mit lokaler Sichtbarkeit von Identifikatoren und Kontrollstrukturen vermeiden strukturierte Programme Codewiederholungen was Vorteile bei der Suche von Programmfehlern mit sich bringt die Programme kurzer und ubersichtlicher macht und daher die Wartung von Software vereinfacht Strukturierte Programmierung ist heute in fast allen Bereichen in denen professionell Software entwickelt wird eine Selbstverstandlichkeit Die neueren Programmierparadigmen wie generative Programmierung aspektorientierte Programmierung oder objektorientierte Programmierung bauen auf der strukturierten Programmierung auf und erweitern oder erganzen diese Inhaltsverzeichnis 1 Wegbereiter 2 Strukturierte Programmiersprachen 3 Siehe auch 4 Literatur 5 Weblinks 6 FussnotenWegbereiter BearbeitenEin Wendepunkt hin zur strukturierten Programmierung war eine Veroffentlichung von Corrado Bohm und seinem Studenten Giuseppe Jacopini aus dem Jahr 1966 1 die im Satz von Bohm und Jacopini zeigten dass Programme auf die oben erwahnten drei Kontrollstrukturen beschrankt werden konnen sowie sicherlich auch der legendare Aufsatz Go To Statement Considered Harmful von Edsger W Dijkstra aus dem Jahr 1968 2 Neben anderen war Niklaus Wirth mit dem Entwurf der Programmiersprache Pascal ein Wegbereiter der strukturierten Programmierung Strukturierte Programmiersprachen BearbeitenAuch wenn strukturierte Programmierung prinzipiell in allen Sprachen moglich 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 unterstutzen und solche weitestgehend eliminiert welche nicht diesem Programmierstil entsprechen Unter anderem folgende Programmiersprachen unterstutzen strukturierte Programmierung Ada Algol C und C C COBOL ab COBOL 85 Fortran ab Fortran 77 Java Pascal Modula 2 Oberon und Component Pascal Python Visual Basic Go Programmiersprache Siehe auch BearbeitenNassi Shneiderman DiagrammLiteratur BearbeitenO J Dahl E W Dijkstra C A R Hoare Structured Programming Academic Press London 1972 ISBN 0 12 200550 3 Weblinks BearbeitenDavid R Tribble Go To Statement Considered Harmful A Retrospective einschliesslich Originalaufsatz von Dijkstra mit Anmerkungen von Tribble Markus Bautsch nbsp Wikibooks Strukturierte Programmierung Lern und LehrmaterialienFussnoten Bearbeiten Bohm Jacopini Flow Diagrams Turing Machines and Languages with Only Two Formation Rules Communications of the ACM Band 9 1966 S 366 371 pdf Dijkstra Go To Statement Considered Harmful In Communications of the ACM 11 3 1968 S 147 148 Abgerufen von https de wikipedia org w index php title Strukturierte Programmierung amp oldid 228168649