Objektorientierte Programmierung (OOP) in C


Um zu verstehen, wie OOP in C funktioniert, stellen wir uns zunächst die Frage: Was genau ist OOP Die objektorientierte Programmierung ist ein verbreiteter Programmierstil, der eine Ausprägung des imperativen Programmierparadigmas darstellt. Damit steht OOP im Gegensatz zur deklarativen Programmierung und deren Spezialisierung, der funktionalen Programmierung.

Die grundlegende Idee der objektorientierten Programmierung besteht darin, Objekte zu modellieren und untereinander interagieren zu lassen. Der Programmfluss ergibt sich aus den Interaktionen der Objekte und steht somit erst zur Laufzeit fest. Im Kern umfasst OOP lediglich drei Eigenschaften:

  1. Objekte kapseln ihren internen Zustand.
  2. Objekte empfangen Nachrichten über ihre Methoden.
  3. Die Zuordnung der Methoden erfolgt dynamisch zur Laufzeit.

Ein Objekt in einer reinen OOP-Sprache wie Java ist eine in sich geschlossene Einheit. Diese umfasst eine beliebig komplexe Datenstruktur sowie Methoden (Funktionen), die darauf operieren. Der interne Zustand des Objekts, abgebildet in den enthaltenen Daten, lässt sich nur über die Methoden auslesen und verändern. Für die Speicherverwaltung von Objekten kommt in der Regel ein „Garbage Collector“ genanntes Sprach-Feature zum Einsatz.

Eine Verbindung von Datenstruktur und Funktionen zu Objekten ist in C nicht ohne Weiteres möglich. Stattdessen strickt man sich ein überschaubares System aus Datenstrukturen, Typdefinitionen, Zeigern und Funktionen. Wie in C üblich, ist der Programmierer bzw. die Programmiererin für die ordnungsgemäße Zuteilung und Freigabe von Speicher zuständig.

Der dabei entstehende objektbasierte C-Code sieht nicht ganz so aus wie von OOP-Sprachen gewohnt, funktioniert aber. Wir geben einen Überblick über die zentralen OOP-Konzepte samt ihrer Entsprechung in C:



Source link

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen