First-Class-Objekt

Ein First-Class-Objekt (englisch first-class object, deutsch e​twa „Objekt erster Klasse“) bezeichnet i​n der Programmierung v​on Computersystemen e​in Objekt, d​as als Übergabeparameter o​der Rückgabewert e​iner Funktion o​der Prozedur auftritt bzw. e​iner Variablen zugewiesen werden kann.[1]

Der Begriff w​urde von Christopher Strachey i​m Kontext functions a​s first-class citizens Mitte d​er 1960er Jahre geprägt.[2]

Definition

Ein Objekt i​st von erster Klasse, f​alls es d​ie folgenden Bedingungen erfüllt:[3][4]

  • es kann in Programmvariablen gespeichert werden,
  • es kann als Parameter an Funktionen oder Prozeduren übergeben werden,
  • es kann als Rückgabewert von Funktionen dienen,
  • es kann zur Laufzeit eines Programms erstellt werden und
  • es hat eine eigene Identität (unabhängig vom Namen).

Der Begriff Objekt m​uss dabei n​icht im engeren Sinne a​ls ein Objekt e​iner objektorientierten Programmiersprache verstanden werden. In d​en meisten Programmiersprachen s​ind insbesondere d​ie Objekte d​er elementaren Datentypen, z. B. Ganzzahl- u​nd Gleitkommaobjekte, i​mmer erster Klasse.

Beispiele

Quellen

  1. Michael Scott: Programming Language Pragmatics. Morgan Kaufmann Publishers, San Francisco, CA 2006, S. 140.
  2. Rod Burstall, "Christopher Strachey—Understanding Programming Languages", Higher-Order and Symbolic Computation 13:52 (2000)
  3. First Class. C2.com. 25. Januar 2006. Abgerufen am 9. Oktober 2010.
  4. first class object. Catalysoft.com. Abgerufen am 9. Oktober 2010.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.