Evolution der Programmierung: Von Sequenziell zu OOP
Eingeordnet in Informatik
Geschrieben am in
Deutsch mit einer Größe von 3,13 KB
Evolution der Programmierung
Hier ist ein Überblick über die Entwicklung verschiedener Programmierparadigmen:
Sequenzielle Programmierung
Ein sequenzielles Programm bezieht sich auf eine Arbeitsweise, bei der ein Programm Anweisungen nacheinander bis zum Ende abarbeitet.
Strukturierte Programmierung
Ein Ansatz, um Computerprogramme klarer zu schreiben. Er verwendet nur drei Strukturen: Sequenz, Auswahl und Iteration. Unbedingte Sprunganweisungen (wie GOTO, Exit Function oder unkontrollierte Returns) sind dabei unnötig.
Das Strukturierte-Programm-Theorem von Böhm und Jacopini beweist, dass jedes Programm ausschließlich mit diesen drei Kontrollstrukturen geschrieben werden kann:
- Sequenz
- Bedingte Anweisung
- Iteration (Schleife) mit Bedingung am Anfang
Objektorientierte Programmierung (OOP)
Ein Programmierparadigma, das Objekte und deren Wechselwirkungen zur Gestaltung von Software nutzt. Es basiert auf Techniken wie Vererbung, Abstraktion, Polymorphismus und Verkapselung. OOP wurde in den frühen 1990er Jahren populär.
Im Gegensatz zur strukturierten Programmierung, bei der Daten und Prozeduren getrennt sind, definieren OOP-Programmierer Objekte und senden ihnen Nachrichten, um deren Methoden auszuführen.
Ereignisgesteuerte Programmierung
Ein Paradigma, bei dem der Programmfluss durch Ereignisse bestimmt wird, die vom Benutzer oder dem System ausgelöst werden. Im Gegensatz zur sequenziellen Programmierung bestimmt hier nicht der Code den Ablauf, sondern die Interaktion des Benutzers.
Grundlegende Konzepte
Instanz
Eine Instanz ist eine lauffähige Kopie eines Programms im Arbeitsspeicher. Sie wird meist durch das Starten einer GUI-Anwendung oder über die Kommandozeile (CLI) erzeugt.
Konstruktor
Eine Methode, die beim Erstellen eines Objekts automatisch aktiviert wird, um dessen Eigenschaften zu initialisieren.
Destruktor
Eine Methode, die ausgelöst wird, wenn ein Objekt zerstört wird, um Ressourcen freizugeben.
Klassen
Objekte werden in Familien, sogenannten Klassen, organisiert. Eine Klasse definiert die gemeinsame Struktur und das Verhalten einer Gruppe von Objekten.
Grundlagen der OOP
- Kapselung: Zusammenfassung von Daten und Methoden zu einer Einheit, um den Zusammenhalt zu erhöhen.
- Geheimhaltung (Information Hiding): Verbergen interner Prozesse, um den Zugriff zu kontrollieren und Fehler zu minimieren.
- Polymorphismus: Die Fähigkeit von Objekten verschiedener Klassen, auf denselben Methodenaufruf unterschiedlich zu reagieren.
- Vererbung: Ein Mechanismus, bei dem eine Klasse Eigenschaften und Methoden einer Basisklasse übernimmt und diese erweitern oder anpassen kann.
Nachrichtenübermittlung
Eine Nachricht ist ein Befehl, der an ein Objekt gesendet wird, um eine Aktion auszulösen. Sie besteht aus drei Elementen: dem empfangenden Objekt, der Art des Ereignisses und den erforderlichen Daten.