Bücher online kostenlos Kostenlos Online Lesen
Die Programmiersprache Ruby (German Edition)

Die Programmiersprache Ruby (German Edition)

Titel: Die Programmiersprache Ruby (German Edition) Kostenlos Bücher Online Lesen
Autoren: David Flanagan , Yukihiro Matsumoto
Vom Netzwerk:
Großbuchstaben beginnen. Konventionsgemäß werden die meisten Konstanten vollständig in Großbuchstaben mit Unterstrichen zur Worttrennung geschrieben,
WIE_DIESE
. Ruby-Klassen- und Modulnamen sind ebenfalls Konstanten, aber sie werden konventionsgemäß mit großen Anfangsbuchstaben und Camel-Case geschrieben,
WieDieser
.
    Konstanten sehen zwar aus wie lokale Variablen mit Großbuchstaben, haben aber die Sichtbarkeit globaler Variablen: Sie können ohne Rücksicht auf einen Gültigkeitsbereich überall in einem Ruby-Programm eingesetzt werden. Anders als globale Variablen können Konstanten allerdings durch Klassen und Module definiert werden und daher qualifizierte Namen haben.
    Eine Konstantenreferenz ist ein Ausdruck, der den Wert der angegebenen Konstante ergibt. Die einfachsten Konstantenreferenzen sind Primärausdrücke – sie bestehen lediglich aus dem Namen der Konstante:
CM_PER_INCH = 2.54 # Eine Konstante definieren.
CM_PER_INCH # Verweis auf die Konstante, ergibt 2,54.
    Außer einfachen Referenzen wie dieser können Konstantenreferenzen auch zusammengesetzte Ausdrücke sein. In diesem Fall wird
::
verwendet, um den Namen der Konstanten von der Klasse oder dem Modul zu trennen, in der beziehungsweise dem sie definiert wird. Die linke Seite von
::
kann ein beliebiger Ausdruck sein, der ein Klassen- oder Modulobjekt ergibt. (Normalerweise ist dieser Ausdruck allerdings eine einfache Konstantenreferenz, die nur die Klasse oder das Modul bezeichnet.) Die rechte Seite von
::
ist der Name einer Konstante, die durch die Klasse oder das Modul definiert wird. Zum Beispiel:
Conversions::CM_PER_INCH # Konstante, definiert im Modul Conversions
modules[0]::NAME # Durch ein Array-Element definierte Konstante
    Module können verschachtelt werden, so dass Konstanten wie folgt in verschachtelten Namensräumen definiert werden können:
Conversions::Area::HECTARES_PER_ACRE
    Die linke Seite von
::
kann weggelassen werden; in diesem Fall wird die Konstante im globalen Gültigkeitsbereich nachgeschlagen:
::ARGV # Die globale Konstante ARGV
    Beachten Sie, dass es eigentlich keinen »globalen Gültigkeitsbereich« für Konstanten gibt. Genau wie globale Funktionen werden auch globale Konstanten innerhalb der Klasse
Object
definiert (und nachgeschlagen). Der Ausdruck
::ARGV
ist daher einfach ein Kürzel für
Object::ARGV
.
    Wenn ein Konstantenreferenzausdruck durch ein
::
qualifiziert wird, weiß Ruby genau, wo die angegebene Konstante nachgeschlagen werden muss. Gibt es dagegen kein qualifizierendes
::
, dann muss der Ruby-Interpreter eine entsprechende Konstantendefinition suchen. Er durchsucht sowohl den umgebenden lexikalischen Gültigkeitsbereich als auch die Vererbungshierarchie der umgebenden Klasse oder des Moduls. Vollständige Details finden Sie in „7.9 Lookup von Konstanten“ .
    Wenn Ruby einen Konstantenreferenzausdruck auswertet, wird entweder der Wert der Konstante zurückgegeben oder es wird eine
NameError
-Ausnahme ausgelöst, wenn keine Konstante mit diesem Namen gefunden wird. Beachten Sie, dass Konstanten nicht existieren, solange ihnen nicht tatsächlich ein Wert zugewiesen wird. Dies ist anders als bei Variablen, die entstehen können, wenn der Interpreter eine Wertzuweisung sieht, aber nicht ausführt.
    Der Ruby-Interpreter definiert beim Start einige Konstanten. Siehe Kapitel 10 für eine Liste.

4.4 Methodenaufrufe
    Ein Methodenaufrufausdruck hat vier Teile:
    Einen beliebigen Ausdruck, dessen Wert das Objekt ist, für das die Methode aufgerufen wird. Auf diesen Ausdruck folgt
.
oder
::
, um ihn vom nachfolgenden Methodennamen zu trennen. Ausdruck und Trennzeichen sind optional; werden sie weggelassen, dann wird die Methode für
self
aufgerufen.
Der Name der aufgerufenen Methode. Dies ist der einzige notwendige Teil eines Methodenaufrufausdrucks.
Die Argumentwerte, die an die Methode übergeben werden. Die Liste der Argumente kann von Klammern umschlossen werden, aber diese sind normalerweise optional. (Optionale und notwendige Klammern werden detailliert in „6.3 Methoden und Klammern“ erläutert.) Wenn es mehrere Argumente gibt, werden sie durch Kommata voneinander getrennt. Anzahl und Typen der Argumente hängen von der Methodendefinition ab. Manche Methoden erwarten keine Argumente.
Ein optionaler Codeblock, der von geschweiften Klammern oder einem
do/end
-Paar umschlossen wird. Die Methode kann diesen Code mithilfe des Schlüsselworts
yield
aufrufen. Diese Fähigkeit, beliebigen Code mit einem

Weitere Kostenlose Bücher