Was ist prozedurale programmierung?
Prozedurale Programmierung
Die prozedurale Programmierung ist ein Programmierparadigma, das auf dem Konzept der Prozeduren (auch Funktionen, Subroutinen oder Methoden genannt) basiert. Das Programm wird in kleinere, unabhängige Prozeduren aufgeteilt, die eine bestimmte Aufgabe erfüllen. Der Fokus liegt auf dem Wie der Problemlösung, indem der Programmablauf Schritt für Schritt durch eine Sequenz von Anweisungen und Funktionsaufrufen definiert wird.
Kernkonzepte:
- Prozeduren/Funktionen: https://de.wikiwhat.page/kavramlar/Funktionen%20(Programmierung) Dies sind benannte Blöcke von Code, die eine bestimmte Aufgabe ausführen. Sie können Parameter entgegennehmen und Werte zurückgeben.
- Sequenzielle Ausführung: Anweisungen werden in der Reihenfolge ausgeführt, in der sie im Code erscheinen.
- Globale und lokale Variablen: https://de.wikiwhat.page/kavramlar/Globale%20Variablen Daten können entweder global (von überall im Programm zugänglich) oder lokal (nur innerhalb der Prozedur zugänglich) sein. Der übermäßige Gebrauch globaler Variablen kann jedoch zu schwer verständlichem und wartbarem Code führen.
- Kontrollstrukturen: https://de.wikiwhat.page/kavramlar/Kontrollstrukturen%20(Programmierung) Dazu gehören Schleifen (z.B.
for
, while
) und bedingte Anweisungen (z.B. if
, else
), um den Programmfluss zu steuern.
- Modularität: Durch die Zerlegung des Programms in kleinere Prozeduren wird die Wartbarkeit und Wiederverwendbarkeit des Codes erhöht.
Vorteile:
- Einfachheit: Relativ leicht zu verstehen und zu implementieren, besonders für kleinere Programme.
- Effizienz: Kann effizient sein, da der Fokus auf direkter Manipulation von Daten liegt.
- Portabilität: Prozeduraler Code ist oft gut portierbar zwischen verschiedenen Plattformen.
Nachteile:
- Schwierige Wartbarkeit: Bei größeren Programmen kann der Code unübersichtlich und schwer zu warten sein, da die Abhängigkeiten zwischen Prozeduren zunehmen.
- Wenig Wiederverwendbarkeit: Die Wiederverwendung von Code kann eingeschränkt sein, da Prozeduren oft stark an bestimmte Datenstrukturen gebunden sind.
- Daten und Funktionen getrennt: Die Trennung von Daten und Funktionen kann zu Problemen bei der Organisation und dem Zugriff auf Daten führen, insbesondere in komplexen Systemen.
- Keine Datenkapselung: https://de.wikiwhat.page/kavramlar/Datenkapselung Es gibt keine Möglichkeit, Daten vor unerwünschtem Zugriff zu schützen.
Beispiele für Programmiersprachen:
Abgrenzung zur Objektorientierten Programmierung (OOP):
Im Gegensatz zur prozeduralen Programmierung, die sich auf Funktionen und Anweisungen konzentriert, steht in der objektorientierten Programmierung das Konzept von Objekten im Vordergrund. Objekte bündeln Daten (Attribute) und Funktionen (Methoden), die auf diesen Daten operieren. OOP fördert Konzepte wie Vererbung, Polymorphie und Datenkapselung, die in der prozeduralen Programmierung nicht direkt vorhanden sind.