Rekursion und Datenkapselung
Rekursion, sich selbst aufrufendes Unterprogramm. Führt ohne geeignetes
Abbruchkriterium unweigerlich zum Programmabsturz (Stack-Überlauf).
Rekursive Programme können meist durch iterative Algorithmen ersetzt werden. Dies
ist jedoch mit großem Aufwand verbunden.
Rekursionen sind meist wesentlich eleganter als ihr iteratives Pendant.
Enthält ein Programm viele, geschachtelte oder rekursive
Aufrufe von Modulen, so werden sukzessive die lokalen Variablen auf dem Stack
abgelegt. Ist der Stack zu klein bemessen, so bricht das Programm ab, wenn der
Stack voll ist.
Lokale Datenstrukturen sind notwendige Voraussetzung für modulares
Programmieren. Gerade bei größeren Projekten, an denen meist mehr als
ein Programmierer arbeiten, muß gewährleistet sein, daß Variablen in einem
Modul nicht versehentlich durch gleiche Namen in einem anderen Modul
überschrieben werden.
Datenkapselung ( Encapsulation), Prinzip der Erzielung maximaler
Datensicherheit und -integrität. Änderung von Variableninhalten ist nur über vom
Programmierer eines Programmteils fest definierte Schnittstellen möglich. Jeder
direkte Zugriff auf die Variablen von außerhalb des Programmteils ist verboten.
Modulare Programmierung ist ein erster Schritt zur Datenkapselung. Sie
versagt jedoch bei Datenstrukturen, die in mehr als einem Modul benötigt
werden.
Der Versuch der konsequenten Realisierung von Datenkapselung
führt auf das Prinzip der Objektorientierung.