Zum Inhalt springen
L

Wikipedia · einfach zusammengefasst · Stand

Gottobjekt

Ein Gottobjekt (englisch God object) oder Gottklasse (englisch god class) bezeichnet in der objektorientierten Programmierung ein Objekt, das „zu viel weiß“ …

Inhalt3 Abschnitte
  1. 1. Definition und Funktionsweise
  2. 2. Probleme und begrenzte Einsatzfälle
  3. 3. Abgrenzung zum Big hairy object

Definition und Funktionsweise

Ein Gottobjekt (englisch „God object“) oder eine Gottklasse („god class“) ist in der objektorientierten Programmierung ein Objekt, das „zu viel weiß“ oder „zu viel tut“. Es gilt als Anti-Pattern, also als verbreitetes, aber ungünstiges Lösungsmuster.

Normalerweise werden große Probleme in kleinere Teilprobleme zerlegt. Jedes Objekt soll hauptsächlich seine eigenen Daten kennen und eine klar abgegrenzte Aufgabe lösen. Bei einem Gottobjekt ist dagegen ein großer Teil der Daten, Methoden und Funktionen eines Programms in einem einzigen Objekt gebündelt. Andere Objekte kommunizieren dann nicht direkt miteinander, sondern hängen von diesem zentralen Objekt ab.

Probleme und begrenzte Einsatzfälle

Weil das Gottobjekt mit vielen Teilen des übrigen Codes eng verbunden ist, werden Änderungen und Wartung schwierig. Seine Verwendung entspricht in der prozeduralen Programmierung ungefähr einem mangelhaften Einsatz von Subroutinen oder einer übermäßigen Nutzung globaler Variablen.

Gottobjekte gelten grundsätzlich als Zeichen eines schwachen Programmaufbaus. In begrenzten Umgebungen wie Mikrocontrollern kommen sie dennoch vor, wenn schnelle Ausführung wichtiger als gute Wartbarkeit ist. Da Mikrocontroller leistungsfähiger werden, verliert dieses Argument laut Artikel zunehmend an Bedeutung.

Abgrenzung zum Big hairy object

Der umgangssprachliche Ausdruck „Big hairy object“ wird häufig als Synonym für Gottobjekt verwendet. Als wesentlicher Unterschied gilt: Ein Gottobjekt übernimmt die Kontrolle über das Programm, während ein Big hairy object lediglich eine überladene Schnittstelle besitzt.

Weiterlesen