Movatterモバイル変換


[0]ホーム

URL:


Zum Inhalt springen
WikipediaDie freie Enzyklopädie
Suche

Prozedurale Programmierung

aus Wikipedia, der freien Enzyklopädie

Prozedurale Programmierung ist einProgrammierparadigma, nach demComputerprogramme entwickelt werden können. Die Bezeichnung ist nicht eindeutig; in der Literatur wird sie für verschiedene Bedeutungen verwendet:

Vereinzelt wirdprozedurale Programmierung auch als Synonym zur imperativen Programmierung an sich[3][4] oder zurstrukturierten Programmierung[5] verstanden.

Zerlegung in Teilprobleme

[Bearbeiten |Quelltext bearbeiten]

Die prozedurale Programmierung ergänzt das imperative Konzept aufeinander folgender Befehle um den Ansatz, einen Algorithmus in überschaubare Teile zu zerlegen. Je nach Programmiersprache werden diese TeileUnterprogramm,Routine,Prozedur oderFunktion genannt. Es lassen sichParameter übergeben und Ergebnisse zurückgeben. Durchlokale undglobale Variablen kann die „Sichtbarkeit“ der Variablen gesteuert werden: Während lokale Variablen nur innerhalb einer Prozedur bekannt sind, sind globale Variablen im ganzen Computerprogramm bekannt. Zusammen mit denKontrollstrukturen derstrukturierten Programmierung ist die prozedurale Programmierung ein Mittel zur Herstellung der Übersichtlichkeit.[6][7] Neben der Übersichtlichkeit können soCodewiederholungen vermieden werden. Diemodulare Programmierung hat einen ähnlichen Zweck, aber auf einer höheren Ebene: Größere Computerprogramme sollen hierbei in einzelnen Modulen entwickelt, getrennt kompiliert und getestet werden können oder es sollen fertigeProgrammbibliotheken eingebunden werden.[8]

Beispielsweise verfügteFortran in der ersten Version (um 1960) nicht über den prozeduralen Ansatz trotz anderer Konzepte zur strukturierten Programmierung; der prozedurale Ansatz wurde in einer späteren Version eingebaut.

Imperative, nicht objektorientierte Programmierung

[Bearbeiten |Quelltext bearbeiten]

Die zweite Bedeutung ist als Sammelbegriff für die Programmierart, die bis in die 1990er Jahre lange vorherrschte, bis dieobjektorientierte Programmierung als Weiterentwicklung praxistauglich eingeführt wurde. Synonym wird auch von der „klassischen“ oder „traditionellen Programmierung“ gesprochen.[9]

Konzepte der prozeduralen Programmierung bilden die Basis für die objektorientierte Programmierung.[10] Seitdem gelten die prozedurale Programmierung und die objektorientierte Programmierung als zwei Hauptströmungen innerhalb der imperativen Programmierung.[11]Hybridsprachen unterstützen beide Konzepte.

Die prozedurale Art der Entwicklung war – bedingt durch den Sprachumfang früher Programmiersprachen – die klassische Art des Programmierens. Doch sind auch bestimmende Eigenschaften der prozeduralen Entwicklung teilweise noch in neueren Programmiersprachen anwendbar.

Merkmale dieser Art des Programmierens sind:

  • Imperativer Ansatz: Folge von definierten Zustandsübergängen, bei denen festgelegt ist, wie diese Zustände verändert werden sollen. Diese zusammengesetzten Anweisungen können endlich (Programm endet selbstständig) oder auch unendlich sein (Programm wartet auf Ereignisse).[1]
  • Kontrollstrukturen (z. B. Sequenz, Schleife, Verzweigung) zur Steuerung der Befehlsausführung.
  • Aufrufen von Unterprogrammen und das Durchleiten und die Rückgabe von Parameterwerten (Konzept der Abstraktion bzw. prozedurale Programmierung im engeren Sinne). Dabei entsteht eine Hierarchie von Funktionen, die jeweils sequentiell abgearbeitet werden. Die Gruppierung und Hierarchie kann beliebigen logischen Prinzipien entsprechen. Der Startpunkt des Programms liegt in der Hauptprozedur – von der aus die Teilfunktionen aufgerufen werden.[1]
  • Datenwerte werden als benannte Variablen definiert und über ihre Namen angesprochen.[1]
  • Diesen Variablen sind Datentypen zugeordnet, die jeweils nur bestimmte Instruktionen erlauben.[1]

Der hauptsächliche Unterschied zwischen prozeduraler und objektorientierter Programmierung ist die Beziehung zwischen Daten und Funktionen. Während bei der objektorientierten Programmierung Daten und Funktionen, die auf diese Daten angewandt werden können, inObjekten zusammengefasst werden, haben bei der prozeduralen Programmierung Daten und Funktionen keinen Zusammenhalt.[12]

Die Entwicklung prozeduraler Programmiersprachen und -techniken basiert auf derVon-Neumann-Architektur, die mit denAssemblersprachen begann und in denHochsprachen ihre Weiterentwicklung fand. Während beim prozeduralen Ansatz derProgrammcode dem späteren Ablauf auf Hardwareebene ähnlich ist und diesen grundsätzlich festlegt, abstrahiert der objektorientierte Ansatz. Somit wird die prozedurale Programmierung als eine Abstraktionsstufe zwischen Assembler und objektorientierter Programmierung betrachtet.[13]

Fortran,COBOL,ALGOL,C undPascal sind eine Auswahl prozeduralerProgrammiersprachen.

Einzelnachweise

[Bearbeiten |Quelltext bearbeiten]
  1. abcdeArnd Poetzsch-Heffter:Konzepte Objektorientierter Programmierung. Mit einer Einführung in Java (= eXamen.press). Springer, Berlin 2009,ISBN 978-3-540-89470-4,S. 10–12 (eingeschränkte Vorschau in der Google-Buchsuche). 
  2. Heinrich Müller, Frank Weichert:Vorkurs Informatik. Der Einstieg ins Informatikstudium. Vieweg+Teubner, Wiesbaden 2011,ISBN 978-3-8348-0959-9,S. 208 (eingeschränkte Vorschau in der Google-Buchsuche). 
  3. Wolfgang Lassmann:Wirtschaftsinformatik. Gabler Verlag, 2006,ISBN 978-3-409-12725-7, Seite 256,books.google.de
  4. Axel Kilian:Programmieren mit Wolfram Mathematica. Springer, 2009,ISBN 978-3-642-04671-1, Seite 66,books.google.de
  5. Hans Benker:Ingenieurmathematik kompakt – Problemlösungen mit MATLAB. Springer, 2010,ISBN 978-3-642-05452-5, Seite 59,books.google.de
  6. Peter A. Henning, Holger Vogelsang:Taschenbuch Programmiersprachen. Hanser Verlag, 2007,ISBN 978-3-446-40744-2, Seite 34,books.google.de
  7. Sebastian Kübeck:Software-Sanierung. Verlag Hüthig Jehle Rehm, 2009,ISBN 978-3-8266-5072-7, Seite 29,books.google.de
  8. Peter A. Henning, Holger Vogelsang:Taschenbuch Programmiersprachen. Hanser Verlag, 2007,ISBN 978-3-446-40744-2, Seite 51,books.google.de
  9. Ulla Kirch, Peter Prinz:C++ – Lernen und professionell anwenden. Verlag Hüthig Jehle Rehm, 2010,ISBN 978-3-8266-9143-0, Seite 25,books.google.de
  10. Helmut Balzert: Java:Objektorientiert programmieren. Verlag W3l, 2010,ISBN 978-3-86834-013-6, Seite V,books.google.de
  11. Kurt Badertscher, Johannes Scheuring:Wirtschaftsinformatik Grundlagen. Compendio Bildungsmedien, 2006,ISBN 978-3-7155-9271-8, Seite 126,books.google.de
  12. Christian Silberbauer:Einstieg in Java und OOP. Springer, 2009,ISBN 978-3-540-78615-3, Seite 130,books.google.de
  13. Oliver Alt:Car Multimedia Systeme Modell-basiert testen mitSysML. Vieweg + Teubner, 2009,ISBN 978-3-8348-0761-8, Seite 44,books.google.de
Abgerufen von „https://de.wikipedia.org/w/index.php?title=Prozedurale_Programmierung&oldid=250959631
Kategorie:

[8]ページ先頭

©2009-2026 Movatter.jp