ruby. wprowadzenie ebook, ebooki
[ Pobierz całość w formacie PDF ]
Pętla while
59
Metoda loop
62
Pętla for
63
Wykonanie przed lub po programie
65
Pytania sprawdzające
66
4. Łańcuchy ........................................................................................................................ 67
Tworzenie łańcuchów
67
Konkatenacja łańcuchów
70
Dostęp do łańcuchów
70
Porównywanie łańcuchów
72
Manipulowanie łańcuchami
73
Konwersja wielkości liter
76
Odstępy itp.
78
Inkrementowanie łańcuchów
79
Konwersja łańcuchów
80
Wyrażenia regularne
81
Ruby 1.9 i następne
84
Pytania sprawdzające
84
5. Matematyka ..................................................................................................................85
Hierarchia klas i moduły wbudowane
86
Konwersja liczb
86
Podstawowe operacje matematyczne
87
Zakresy
90
Zapytania o liczby
91
Inne metody matematyczne
93
Funkcje matematyczne
93
Liczby wymierne
94
Liczby pierwsze
96
Pytania sprawdzające
97
6. Tablice ............................................................................................................................99
Tworzenie tablic
100
Dostęp do elementów
102
Konkatenacja
104
Operacje na zbiorach
104
Elementy unikatowe
105
Na stos
105
Porównywanie tablic
105
Modyfikacja elementów
106
Usuwanie elementów
107
6
|
Spis treści
Tablice i bloki
108
Sortowanie i w tył zwrot
108
Tablice wielowymiarowe
109
Ruby 1.9 i następne
109
Inne metody klasy Array
109
Pytania sprawdzające
110
7. Tablice asocjacyjne ...................................................................................................... 111
Tworzenie tablicy asocjacyjnej
111
Dostęp do tablicy asocjacyjnej
112
Iteracja na tablicy asocjacyjnej
113
Modyfikacje tablicy asocjacyjnej
114
Konwersja tablicy asocjacyjnej na inną klasę
116
Ruby 1.9 i następne
117
Inne metody klasy Hash
117
Pytania sprawdzające
117
8. Praca z plikami .............................................................................................................119
Katalogi
119
Tworzenie nowego pliku
121
Otwieranie istniejącego pliku
121
Usuwanie i zmiana nazw plików
124
Zapytania o pliki
124
Zmiana trybu i właściciela pliku
125
Klasa IO
126
Pytania sprawdzające
127
9. Klasy ............................................................................................................................. 129
Definiowanie klasy
130
Zmienne instancji
131
Akcesory
132
Zmienne klasy
134
Metody klasy
134
Dziedziczenie
136
Moduły
137
Metody public, private i protected
139
Pytania sprawdzające
140
10.
Dalsza zabawa z językiem Ruby ................................................................................ 141
Formatowanie wyjścia za pomocą metody sprintf
141
Przetwarzanie dokumentów XML
144
Data i czas
148
Spis treści
|
7
Refleksja
152
Tk
155
Metaprogramowanie
157
RubyGems
158
Obsługa wyjątków
162
Tworzenie dokumentacji za pomocą RDoc
163
Embedded Ruby
170
Pytania sprawdzające
172
11.
Krótki przewodnik po Ruby on Rails ......................................................................... 173
Skąd pochodzi Rails?
173
Dlaczego Rails?
174
Co inni zdziałali z pomocą Rails?
178
Hosting dla Rails
179
Instalowanie Rails
179
Nauka Rails
183
Krótki samouczek
184
Pytania sprawdzające
188
A Leksykon języka Ruby ..................................................................................................191
B
Odpowiedzi na pytania sprawdzające ......................................................................209
Słowniczek ............................................................................................................................. 215
Skorowidz ..............................................................................................................................223
8
|
Spis treści
ROZDZIAŁ 2.
Krótka wycieczka po języku Ruby
Niniejszy rozdział przedstawia, bez zbytniego zagłębiania się w szczegóły, podstawy języka
Ruby: klasy i moduły, w tym klasę
Object
i moduł
Kernel
, słowa zastrzeżone (inaczej słowa
kluczowe), komentarze, zmienne, metody i tak dalej. Większość z tych zagadnień będzie omó-
wiona bardziej szczegółowo w innych rozdziałach. Niektóre tematy zasługują na całe rozdziały,
inne tylko na podrozdziały (zawarte w rozdziale 10.). Za każdym razem powiem, gdzie znajdują
się dodatkowe informacje na dany temat. W niniejszym rozdziale zostały zawarte najbardziej
szczegółowe opisy metod i bloków.
Ruby jest językiem obiektowym
Matz, twórca języka Ruby, już w szkole średniej marzył o stworzeniu własnego języka progra-
mowania. Chciał utworzyć język skryptowy, który zarazem byłby zorientowany obiektowo.
Ruby wykracza poza proste pisanie skryptów, mimo że programy w nim mogą sprawiać wra-
żenie zwykłych skryptów powłoki. Nie jest to zaledwie język proceduralny, choć może być
jako taki wykorzystany.
Język Ruby zawiera
klasy
. Klasy zawierają dane — w postaci stałych i zmiennych — oraz
metody, które są krótkimi fragmentami kodu, pomagającymi wykonywać operacje na danych.
Klasy mogą dziedziczyć po sobie informacje, lecz tylko z jednej klasy na raz. Pozwala to ponow-
nie wykorzystywać kod — co oznacza mniej czasu zmarnowanego na naprawianie kodu i usu-
wanie z niego błędów — oraz mieszać ze sobą kod poprzez dziedziczenie.
Klasa jest czymś w rodzaju „schematu”; za pomocą metody
new
schemat ten można przypisać
do zmiennej lub wykonać jego kopię, która przez to staje się
obiektem
. W języku Ruby
obiektem jest prawie wszystko; w istocie to, co Ruby może skojarzyć z nazwą zmiennej, jest
zawsze obiektem.
O klasach można powiedzieć o wiele więcej; Czytelnik znajdzie mnóstwo dodatkowych infor-
macji na ich temat w rozdziale 9. Na razie wystarczą nam podstawy. Listing 2.1 przedstawia
program w Ruby (
friendly.rb
) zawierający dwie klasy:
Hello
i
Goodbye
. Program ten jest
zawarty w archiwum kodu Ruby towarzyszącym niniejszej książce (dostępnym pod adresem
ftp://ftp.helion.pl/przyklady/rubwpr.zip
). Proponuję uruchomić program w powłoce lub wierszu
poleceń w katalogu, do którego zostało rozpakowane archiwum. W przypadkach gdy przykład
kodu nie znajduje się w pliku, można wpisać go w irb. Zachęcam Czytelnika do wypróbowy-
wania kodu tak często, jak to możliwe.
33
[ Pobierz całość w formacie PDF ]