Liste der Programmier-Paradigmen
13. Februar 2025 - Lesezeit: ~1 Minute
In der Programmierung gibt es verschiedenen Programmier-Paradigmen. Ein Paradigma beschreibt einen bestimmten Ansatz oder Stil, Probleme zu lösen und Software zu entwickeln. Die zwei bekanntesten Programmier-Paradigmen sind objektorientierte und prozeduale Programmierung.
Es gibt viele Überschneidungen und Mischformen und oft werden Paradigmen in Kombination verwendet um Vorteile verschiedener Ansätze zu nutzen.
List der Programmier-Paradigmen
- Prozeduale Programmierung (PP)
- Wird auch als imperative Programmierung bezeichnet
- Der Fokus liegt auf der Ausführung von Befehlen, die hintereinander abgearbeitet werden (Sequenz).
- Programme werden als eine Reihe von Prozeduren oder Funktionen geschrieben, die Daten manipulieren und Aufgaben ausführen.
- Objektorientierte Programmierung (OOP)
- Der Fokus liegt auf Objekten, die Daten und Verhalten kapseln.
- Objekte sind Instanzen von Klassen und diese definieren die Struktur und das Verhalte von Objekten.
- Wichtige Konzepte: Vererbung, Polymorphismus, Kapselung und Abstraktion.
- Funktionale Programmierung (FP)
- Der Fokus liegt auf der Anwendung und der Komposition von Funktionen.
- Daten werden unveränderlich (immutable) behalndelt und es wird versucht, Seiteneffekte zu vermeiden.
- Haskell und Lisp sind bekannte funktionale Sprachen.
- Logische Programmierung
- Bei der logischen Programmierung wird die Lösung eines Problems durch logische Aussagen und Regeln definiert.
- Programme bestehen aus einer Reihe von Fakten und Regeln, die eine Schlussfolgerung ermöglichen.
- Eine bekannte Sprache in diesem Paradigma ist Prolog.
- Deklarative Programmierung
- Bei diesem Paradigma wird das "was" (das gewünschte Ergebnis) beschrieben, ohne genau zu spezifizieren, wie es erreicht wird.
- SQL (für Datenbankabfragen) ist ein Beispiel, bei dem man beschreibt, was abgefragt werden soll, ohne anzugeben, wie es im Hintergrund verarbeitet wird.
- Ereignisgesteuerte Programmierung (Event-Driven Programming)
- Programme reagieren auf Ereignisse, wie Benutzereingaben oder Systemereignisse
- Häufig verwendet in der Entwicklung von grafischen Benutzeroberflächen (GUIs) oder bei der Eerstellung von Webanwendungen.