Book description
Die Programmiersprache Ruby ist das maßgebliche Handbuch zu Ruby mit einer umfassenden Beschreibung der Sprachversionen 1.8 und 1.9. Es wurde für erfahrene Programmierer geschrieben, die sich neu in Ruby einarbeiten wollen, und für Ruby-Programmierer, die ihr Wissen erweitern und Ruby besser beherrschen wollen. Dieses Buch dokumentiert Ruby umfassend, jedoch ohne den Formalismus einer Sprachspezifikation.
Table of contents
- Die Programmiersprache Ruby
- Vorwort
- 1. Einführung
- 2. Die Struktur und Ausführung von Ruby-Programmen
-
3. Datentypen und Objekte
- 3.1 Zahlen
-
3.2 Text
-
3.2.1 String-Literale
- 3.2.1.1 String-Literale in einfachen Anführungszeichen
- 3.2.1.2 String-Literale in doppelten Anführungszeichen
- 3.2.1.3 Unicode-Escapes
- 3.2.1.4 Weitere Begrenzungen für String-Literale
- 3.2.1.5 Hier-Dokumente
- 3.2.1.6 Backtick-Kommandoausführung
- 3.2.1.7 String-Literale und Veränderlichkeit
- 3.2.1.8 Die Methode String.new
- 3.2.2 Zeichenliterale
- 3.2.3 String-Operatoren
- 3.2.4 Zugriff auf Zeichen und Teil-Strings
- 3.2.5 Über Strings iterieren
- 3.2.6 String-Kodierungen und Multibyte-Zeichen
-
3.2.1 String-Literale
- 3.3 Arrays
- 3.4 Hashes
- 3.5 Bereiche
- 3.6 Symbole
- 3.7 True, False und Nil
- 3.8 Objekte
-
4. Ausdrücke und Operatoren
- 4.1 Literale und Schlüsselwortliterale
- 4.2 Variablen
- 4.3 Konstanten
- 4.4 Methodenaufrufe
-
4.5 Wertzuweisung
- 4.5.1 Wertzuweisung an Variablen
- 4.5.2 Wertzuweisung an Konstanten
- 4.5.3 Wertzuweisung an Attribute und Array-Elemente
- 4.5.4 Abgekürzte Wertzuweisung
-
4.5.5 Parallele Wertzuweisung
- 4.5.5.1 Dieselbe Anzahl von Lvalues und Rvalues
- 4.5.5.2 Ein Lvalue, mehrere Rvalues
- 4.5.5.3 Mehrere Lvalues, ein einzelner Array-Rvalue
- 4.5.5.4 Unterschiedliche Anzahl von Lvalues und Rvalues
- 4.5.5.5 Der Splat-Operator
- 4.5.5.6 Klammern in der parallelen Wertzuweisung
- 4.5.5.7 Der Wert der parallelen Wertzuweisung
-
4.6 Operatoren
- 4.6.1 Unäres + und -
- 4.6.2 Potenz: **
- 4.6.3 Arithmetik: +, −, *, / und %
- 4.6.4 Verschieben und Anhängen: << und >>
- 4.6.5 Komplement, Vereinigungs- und Schnittmenge: ~, &, |, und ^
- 4.6.6 Vergleich: <, <=, >, >= und <=>
- 4.6.7 Gleichheit: ==, !=, =~, !~ und ===
- 4.6.8 Boolean-Operatoren: &&, ||, !, and, or, not
- 4.6.9 Bereiche und Flip-Flops: .. und ...
- 4.6.10 Bedingungsprüfung: ?:
- 4.6.11 Wertzuweisungsoperatoren
- 4.6.12 Der Operator defined?
- 4.6.13 Anweisungsmodifizierer
- 4.6.14 Nicht-Operatoren
-
5. Anweisungen und Kontrollstrukturen
- 5.1 Fallentscheidungen
- 5.2 Schleifen
- 5.3 Iteratoren und Aufzählungsobjekte
- 5.4 Blöcke
- 5.5 Den Steuerungsablauf modifizieren
- 5.6 Ausnahmen und Ausnahmebehandlung
- 5.7 BEGIN und END
- 5.8 Threads, Fiber und Continuations
-
6. Methoden, Procs, Lambdas und Closures
- 6.1 Einfache Methoden definieren
- 6.2 Methodennamen
- 6.3 Methoden und Klammern
- 6.4 Methodenargumente
- 6.5 Procs und Lambdas
- 6.6 Closures
- 6.7 Method-Objekte
- 6.8 Funktionale Programmierung
-
7. Klassen und Module
-
7.1 Definieren einer einfachen Klasse
- 7.1.1 Erstellen der Klasse
- 7.1.2 Instanziieren eines Point
- 7.1.3 Initialisieren eines Point
- 7.1.4 Definieren einer Methode to_s
- 7.1.5 Akzessoren und Attribute
- 7.1.6 Definieren von Operatoren
- 7.1.7 Array- und Hash-Zugriff mit []
- 7.1.8 Koordinaten enumerieren
- 7.1.9 Point und Gleichheit
- 7.1.10 Punkte ordnen
- 7.1.11 Ein veränderbarer Point
- 7.1.12 Veränderbare Klassen auf die Schnelle
- 7.1.13 Eine Klassenmethode
- 7.1.14 Konstanten
- 7.1.15 Klassenvariablen
- 7.1.16 Klassen-Instanzvariablen
- 7.2 Sichtbarkeit von Methoden: public, protected, private
- 7.3 Subklassen und Vererbung
- 7.4 Erzeugen und Initialisieren von Objekten
- 7.5 Module
- 7.6 Laden von Modulen
- 7.7 Singleton-Methoden und die Eigenklasse
- 7.8 Methoden-Lookup
- 7.9 Lookup von Konstanten
-
7.1 Definieren einer einfachen Klasse
-
8. Reflexion und Metaprogrammierung
- 8.1 Typen, Klassen und Module
- 8.2 Strings und Blöcke auswerten
- 8.3 Variablen und Konstanten
- 8.4 Methoden
- 8.5 Hooks
- 8.6 Tracing
- 8.7 ObjectSpace und GC
- 8.8 Benutzerdefinierte Kontrollstrukturen
- 8.9 Fehlende Methoden und fehlende Konstanten
- 8.10 Methoden dynamisch erzeugen
- 8.11 Alias-Verkettung
- 8.12 Domänenspezifische Sprachen
-
9. Die Ruby-Plattform
- 9.1 Strings
- 9.2 Reguläre Ausdrücke
- 9.3 Zahlen und Berechnungen
- 9.4 Datums- und Uhrzeitwerte
-
9.5 Collections
- 9.5.1 Enumerierbare Objekte
- 9.5.2 Arrays
- 9.5.2 Arrays iterieren, durchsuchen und sortieren
-
9.5.3 Hashes
- 9.5.3.1 Hashes erzeugen
- 9.5.3.2 Hashes indexieren und Vorhandensein von Elementen prüfen
- 9.5.3.3 Schlüssel und Werte in einem Hash speichern
- 9.5.3.4 Hash-Einträge entfernen
- 9.5.3.5 Arrays aus Hashes
- 9.5.3.6 Hash-Iteratoren
- 9.5.3.7 Standardwerte
- 9.5.3.8 Hashcodes, Schlüsselgleichheit und veränderbare Schlüssel
- 9.5.3.9 Verschiedene Hash-Methoden
- 9.5.4 Sets
- 9.6 Dateien und Verzeichnisse
- 9.7 Ein-/Ausgabe
- 9.8 Netzwerk-Handling
- 9.9 Threads und Parallelität
-
10. Die Ruby-Umgebung
- 10.1 Den Ruby-Interpreter aufrufen
- 10.2 Die Top-Level-Umgebung
- 10.3 »Practical Extraction and Report«-Arbeitserleichterungen
- 10.4 Das Betriebssystem aufrufen
- 10.5 Sicherheit
- Impressum
Product information
- Title: Die Programmiersprache Ruby
- Author(s):
- Release date: March 2009
- Publisher(s): O'Reilly Verlag
- ISBN: 97833897218741
You might also like
book
Praxiswissen Ruby
Täglich gewinnt Ruby viele neue Anhänger in der ganzen Welt. Ruby ist einsteigerfreundlich, objektorientiert und als …
book
Mathematik verstehen mit fischertechnik®
28 faszinierende Modelle laden zum Nachbauen und Experimentieren ein: Sierechnen, zeichnen Ellipsen und andere Figuren, faktorisieren …
book
Die Kunst der agilen Entwicklung
Dieses Buch beschreibt umfassend und praxisorientiert die Grundlagen, Methoden und Praktiken agiler Softwareentwicklung. James Shore gibt …
book
Produktiv auf der Linux-Kommandozeile
Souverän unterwegs auf der Kommandozeile: Ob als Systemadministrator, Softwareentwicklerin, Teammitglied im Site Reliability Engineering oder einfach …