Zum Inhalt springen

Verschachtelung

Männliche Person, frontal, schaut in die Kamera; trägt kariertes Hemd über dunkelfarbigem T‑Shirt; heller Innenraum mit unscharfem Monitor oder Poster links und Fenster rechts.

von Richard Albrecht am 29.10.2026

Verschachtelung ist das Einbetten einer Struktur in eine gleichartige: eine Schleife in einer Schleife, eine Bedingung in einer Bedingung, ein Objekt in einem Objekt. Sie kommt in Quelltext ebenso vor wie in Datenformaten und in Stylesheets.

Verschachtelung

Das Einbetten einer Struktur in eine gleichartige, etwa einer Schleife in eine Schleife.
Beispiel: „Die Verschachtelung ging über fünf Ebenen, und niemand wusste mehr, welche Bedingung wozu gehörte.“

Sichtbar wird sie durch die Einrückung.

In JSON ist sie die Regel; in CSS kam sie erst mit den Vorverarbeitern und später in die Sprache selbst.

Links vier ineinanderliegende Kästen mit je einer Prüfung, rechts dieselben vier Prüfungen als Kästen untereinander auf einer Ebene, der unterste hervorgehoben
Die linke Fassung wächst nach rechts, die rechte bleibt am linken Rand.

Wo Verschachtelung nötig ist

Überall dort, wo der Gegenstand selbst geschachtelt ist. Eine Bestellung enthält Positionen, eine Position enthält Mengen und Preise; das in einer flachen Liste abzubilden, kostet mehr, als es einbringt.

Ebenso bei Durchläufen über mehrdimensionale Daten. Wer jede Zeile einer Tabelle und darin jede Spalte betrachtet, braucht zwei Ebenen, und daran ist nichts falsch.

Warum Tiefe bei der Verschachtelung teuer wird

Weil der Leser alle offenen Ebenen gleichzeitig im Kopf behalten muss. Bei zwei geht das, bei fünf nicht mehr; jede Zeile ist dann nur noch im Zusammenhang von vier weiteren zu verstehen.

Dazu kommt die Rechenzeit. Zwei ineinanderliegende Schleifen über je tausend Elemente sind eine Million Durchläufe, und das fällt erst mit echten Datenmengen auf.

Wie sich Verschachtelung auflösen lässt

Durch frühes Aussteigen. Statt den gesamten Rest in eine Bedingung zu hüllen, prüft man den Sonderfall zuerst und verlässt die Funktion; der Hauptfall bleibt dann auf der ersten Ebene.

Der zweite Weg ist das Herausziehen in eigene Funktionen. Was auf der dritten Ebene steht, hat meist einen eigenen Namen verdient, und mit dem Namen verschwindet die Ebene.

Siehe auch:

Einrückung

Der Abstand am Zeilenanfang, der die Verschachtelung von Quelltext sichtbar macht.

#Programmiersprachen

Syntax

Die Regeln, nach denen die Zeichen einer Sprache angeordnet sein müssen, damit ein Rechner sie lesen kann.

#Programmiersprachen

CSS

Die Sprache, in der das Aussehen einer Website beschrieben wird.

#Frontend-Entwicklung (HTML, CSS, JavaScript)

JSON

Das Format, in dem Daten heute durch das Web reisen.

#Programmiersprachen

Clean Code

Quelltext für die Menschen schreiben, die ihn später lesen.

#Programmiersprachen

Fehlerbehandlung (Exception)

Legt fest, was geschieht, wenn etwas schiefgeht, damit nicht alles anhält.

#Programmiersprachen