Self (Programmiersprache)
Aus LexiDict
Self [sɛlf] (engl.: Selbst, die eigene Person betreffend) ist eine objektorientierte, dynamisch typisierte Programmiersprache. Zugleich verweist das Schlüsselwort self – oder aber wie bei Java das Schlüsselwort this – bei klassenbasierten Programmiersprachen auf das Exemplar einer Klasse. Diverse Quellen bezeichnen Self als einen Smalltalk-Dialekt, was wohl auf die nahezu identische Sprachsyntax zurückzuführen ist. Dennoch unterscheidet sich Self in einem wesentlichen Punkt im direkten Vergleich mit Smalltalk: Self ist wie JavaScript eine auf Prototypen basierte Programmiersprache ohne Klassendefinitionen. Die Mehrzahl aller objektorientierten Sprachen basiert hingegen auf Klassen.
Ein Self-Objekt ist nicht die Manifestation einer Klasse im Sinne eines Bauplans, sondern direktes Resultat eines Prototyps. So wird einem Self-Objekt auch nicht der Lebensatem eingehaucht, indem man es auf Basis einer Klassenschablone instanziiert, sondern indem man ein bestehendes Objekt kopiert und dieses entsprechend abändert.
Ein Self-Prototyp besteht aus so genannten Slots. Den Prototyp muss man sich in diesem Zusammenhang wie ein Ablagesystem oder einen Rollcontainer vorstellen. Die Slots nehmen also entsprechend dieser Metapher die Rolle einer Schublade oder eines Ablagefachs ein. Slots können sowohl eine Eigenschaft, wie beispielsweise einen numerischen Wert, aber auch eine Methode repräsentieren, welche ihrerseits in der Lage ist, Nachrichten zu empfangen.
Das Konzept der Slots ist eminent, da es sich nicht nur um ein sprachliches Konstrukt handelt, sondern ein Slot gleichzeitig ein grafisches Element ist, mithilfe dessen innerhalb der Self-Entwicklungsumgebung gearbeitet wird.
Weblinks
- http://www.smalltalk.org.br/movies/ – Self: The Movie (
Dieser Artikel basiert auf dem Artikel Self (Programmiersprache) aus der freien Enzyklopädie Wikipedia und steht unter der GNU-Lizenz für freie Dokumentation. In der Wikipedia ist eine Liste der Autoren verfügbar.












