Spis treści
Wstęp 7
1. Wprowadzenie 11
1.1. Krótki kurs języka Ruby 12
1.2. Wypróbuj język Ruby 20
1.3. Książka — informacje 24
1.4. Program rozwiązujący sudoku 25
2. Struktura i uruchamianie programów Ruby 31
2.1. Struktura leksykalna 32
2.2. Struktura syntaktyczna 39
2.3. Struktura plików 40
2.4. Kodowanie znaków 41
2.5. Wykonywanie programu 43
3. Typy danych i obiekty 45
3.1. Liczby 46
3.2. Tekst 50
3.3. Tablice 66
3.4. Tablice asocjacyjne 68
3.5. Zakresy 70
3.6. Symbole 72
3.7. Słowa kluczowe true, false i nil 73
3.8. Obiekty 73
4. Wyrażenia i operatory 85
4.1. Literały i literały słów kluczowych 86
4.2. Odwołania do zmiennych 87
4.3. Odwołania do stałych 88
4.4. Wywołania metod 89
4.5. Przypisania 91
4.6. Operatory 99
5. Instrukcje i przepływ sterowania 115
5.1. Instrukcje warunkowe 116
5.2. Pętle 124
5.3. Iteratory i obiekty przeliczalne 126
5.4. Bloki 136
5.5. Kontrola przepływu sterowania 141
5.6. Wyjątki i ich obsługa 148
5.7. Instrukcje BEGIN i END 158
5.8. Wątki, włókna i kontynuacje 159
6. Metody, obiekty klasy Proc, lambdy i domknięcia 165
6.1. Definiowanie prostych metod 167
6.2. Nazwy metod 170
6.3. Nawiasy w metodach 172
6.4. Argumenty metod 174
6.5. Obiekty proc i lambda 181
6.6. Domknięcia 188
6.7. Obiekty klasy Method 191
6.8. Programowanie funkcyjne 192
7. Klasy i moduły 201
7.1. Definiowanie prostej klasy 202
7.2. Widoczność metod — publiczne, chronione i prywatne 218
7.3. Tworzenie podklas i dziedziczenie 220
7.4. Tworzenie i inicjacja obiektów 227
7.5. Moduły 232
7.6. Funkcje load i require 236
7.7. Metody singletonowe i klasa eigenclass 240
7.8. Wyszukiwanie metod 242
7.9. Wyszukiwanie stałych 244
8. Refleksja i metaprogramowanie 247
8.1. Typy, klasy i moduły 248
8.2. Wykonywanie łańcuchów i bloków 250
8.3. Zmienne i stałe 252
8.4. Metody 254
8.5. Metody zwrotne 258
8.6. Śledzenie 259
8.7. Moduły ObjectSpace i GC 261
8.8. Niestandardowe struktury sterujące 262
8.9. Brakujące metody i stałe 264
8.10. Dynamiczne tworzenie metod 267
8.11. Tworzenie łańcuchów aliasów 269
8.12. Języki do wyspecjalizowanych zastosowań 274
9. Platforma Ruby 279
9.1. Łańcuchy 280
9.2. Wyrażenia regularne 285
9.3. Liczby i matematyka 295
9.4. Data i godzina 299
9.5. Kolekcje 300
9.6. Pliki i katalogi 320
9.7. Wejście i wyjście 325
9.8. Programowanie sieciowe 335
9.9. Wątki i współbieżność 340
10. Środowisko Ruby 355
10.1. Uruchamianie interpretera Ruby 356
10.2. Środowisko najwyższego poziomu 360
...
fenix71