Ruby. Przewodnik programisty. Wydanie II
- Autor:
- David A. Black
- Promocja 2za1
- Wydawnictwo:
- Helion
- Ocena:
- 4.2/6 Opinie: 6
- Stron:
- 568
- Druk:
- oprawa miękka
- Dostępne formaty:
-
PDFePubMobi
Opis książki: Ruby. Przewodnik programisty. Wydanie II
Poznaj kluczowe pojęcia związane z językiem Ruby. W kolejnych rozdziałach znajdziesz istotne informacje na temat składni, dostępnych elementów oraz typowych konstrukcji. Ponadto zobaczysz, jak korzystać z obiektów, metod i zmiennych, oraz nauczysz się budować właściwą strukturę Twojego projektu. Po opanowaniu podstaw będziesz swobodnie tworzył proste programy oraz przejdziesz do zaawansowanych tematów związanych z technikami przepływu sterowania, wbudowanymi elementami, kolekcjami oraz wyrażeniami regularnymi. Ta książka jest doskonałym podręcznikiem dla wszystkich osób chcących nauczyć się języka Ruby i wykorzystać jego potencjał w kolejnych projektach.
Dzięki tej książce:
- poznasz składnię języka Ruby
- zrozumiesz filozofię stojącą za tym językiem
- opanujesz techniki programowania obiektowego
- wykorzystasz potencjał języka Ruby
Poznaj i wykorzystaj jego możliwości języka Ruby!
Wybrane bestsellery
-
Jeśli chcesz się dowiedzieć, jak wykorzystać tę platformę w swoich projektach, jesteś na dobrym tropie! Dzięki tej książce poznasz możliwości i konstrukcje języka Ruby oraz mechanizm działania platformy Rails, a w szczególności interfejs Rack. Dowiesz się, jak zapewniać odpowiednią jakość swoich ...
Programowanie w języku Ruby. Mikrousługi i konteneryzacja Programowanie w języku Ruby. Mikrousługi i konteneryzacja
(0,00 zł najniższa cena z 30 dni)38.35 zł
59.00 zł(-35%) -
Książka stanowi kompletny zbiór informacji na temat języka Ruby. Jeśli naprawdę chcesz zrozumieć ten język, oto obowiązkowa pozycja do przeczytania! W trakcie lektury zapoznasz się z bogatym API, pozwalającym na przetwarzanie tekstu; zrozumiesz techniki związane z wykonywaniem działań na liczbach...(0,00 zł najniższa cena z 30 dni)
41.40 zł
69.00 zł(-40%) -
Podczas tego szkolenia nauczysz się konfigurować serwer i opanujesz zasady uruchamiania aplikacji napisanej w Ruby on Rails na własnym serwerze, by następnie zautomatyzować ten proces za pomocą skryptów napisanych w bibliotece Capistrano. Będziesz używać platformy chmurowej typu PaaS (Platform as...
Ruby on Rails. Kurs video. Wdrażanie (deployment) na własne serwery i chmurę Ruby on Rails. Kurs video. Wdrażanie (deployment) na własne serwery i chmurę
(0,00 zł najniższa cena z 30 dni)29.50 zł
59.00 zł(-50%) -
Kurs Programowanie w Ruby. Poziom drugi. Kurs video. Zaawansowane techniki trwa niecałe trzy godziny, jednak uwaga – dla Ciebie będzie to bardzo intensywny czas! W trakcie kursu opanujesz m.in. umiejętność implementowania języków dziedzinowych (DSL) takich jak RSpec. Poznasz model obiektowy...
Programowanie w Ruby. Poziom drugi. Kurs video. Zaawansowane techniki Programowanie w Ruby. Poziom drugi. Kurs video. Zaawansowane techniki
(0,00 zł najniższa cena z 30 dni)24.50 zł
49.00 zł(-50%) -
Ruby. Kurs video obejmuje omówienie typów danych w Rubym i podstawy programowania obiektowego. Pokazuje, jak wykorzystać dynamiczne aspekty tego języka (niedostępne w większości innych języków), a dodatkowo przedstawia sposoby poprawnego wykonywania wielu czynności, takich jak instalacja bibliote...
Ruby. Kurs video. Poziom pierwszy. Podstawy języka i praktyczne przykłady Ruby. Kurs video. Poziom pierwszy. Podstawy języka i praktyczne przykłady
(0,00 zł najniższa cena z 30 dni)34.50 zł
69.00 zł(-50%) -
Elevate your Ruby skills to an advanced level by deepening your understanding of the design principles, best practices, and trade-offs involved in implementation approaches to future-proof your Ruby applications
-
Get to grips with the fundamentals of the Ruby programming language and learn how to build your own applications with the help of real-world examples and hands-on activities
-
Learn continuous deployment and automation with code-signing, continuous testing, building, deploying, and releasing of your app. About This BookA practical guide on automating your mobile development pipeline with Fastlane, Jenkins, and Slack.Build, test, run and deploy your mobile application r...
-
Leverage the power of Elixir programming language to solve practical problems associated with scalability, concurrency, fault tolerance, and high availability. Key Features Enhance your Elixir programming skills using its powerful tools and abstractions Discover how to develop a full-fledged fil...
-
This book will provide you with all of the tools you need to be a professional Ruby developer. Starting with the core principles, such as syntax and best practices, and up to advanced topics like metaprogramming and big data analysis.About This BookProvides the core skills required to become a Ru...
Ebooka przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video zobaczysz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP4 (pliki spakowane w ZIP)
Szczegóły książki
- Tytuł oryginału:
- The Well-Grounded Rubyist, 2nd edition
- Tłumaczenie:
- Piotr Pilch
- ISBN Książki drukowanej:
- 978-83-283-1103-9, 9788328311039
- Data wydania książki drukowanej:
- 2015-10-12
- ISBN Ebooka:
- 978-83-283-1104-6, 9788328311046
- Data wydania ebooka:
-
2015-10-12
Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@helion.pl.
- Format:
- 168x237
- Numer z katalogu:
- 36350
- Rozmiar pliku Pdf:
- 3.9MB
- Rozmiar pliku ePub:
- 3.9MB
- Rozmiar pliku Mobi:
- 10.6MB
- Pobierz przykładowy rozdział PDF
- Przykłady na ftp
Ebook zawiera materiały dodatkowe, które możesz pobrać z serwera FTP - link znajdziesz na stronie redakcyjnej.
Spis treści książki
- 1.1.Ogólne wprowadzenie do języka Ruby (32)
- 1.1.1. Niezbędna składnia języka Ruby (33)
- 1.1.2. Różnorodność identyfikatorów języka Ruby (35)
- 1.1.3. Wywołania metod, komunikaty i obiekty języka Ruby (37)
- 1.1.4. Tworzenie i zapisywanie prostego programu (39)
- 1.1.5. Kierowanie programu do interpretera języka Ruby (40)
- 1.1.6. Operacje wejścia-wyjścia związane z plikami i danymi wprowadzanymi przy użyciu klawiatury (42)
- 1.2. Anatomia instalacji języka Ruby (45)
- 1.2.1. Podkatalog standardowych bibliotek języka Ruby (46)
- 1.2.2. Katalog rozszerzeń języka C (RbConfig::CONFIG[archdir]) (46)
- 1.2.3. Katalogi site_ruby (RbConfig::CONFIG[sitedir]) i vendor_ruby (RbConfig::CONFIG[vendordir]) (47)
- 1.2.4. Katalog gems (47)
- 1.3. Rozszerzenia i biblioteki programistyczne języka Ruby (48)
- 1.3.1. Ładowanie plików i rozszerzeń zewnętrznych (48)
- 1.3.2. Ładowanie pliku określonego w domyślnej ścieżce ładowania (49)
- 1.3.3. Żądanie składnika (50)
- 1.3.4. Polecenie require_relative (52)
- 1.4. Standardowe narzędzia i aplikacje języka Ruby (52)
- 1.4.1. Opcje wiersza poleceń interpretera (53)
- 1.4.2. Omówienie interaktywnego interpretera języka Ruby irb (57)
- 1.4.3. Narzędzia ri i Rdoc (59)
- 1.4.4. Narzędzie do zarządzania zadaniami rake (60)
- 1.4.5. Instalowanie pakietów za pomocą polecenia gem (62)
- 1.5. Podsumowanie (64)
- 2.1. Komunikowanie się z obiektami (66)
- 2.1.1. Język Ruby i obiektowość (66)
- 2.1.2. Tworzenie obiektu ogólnego (67)
- 2.1.3. Metody pobierające argumenty (69)
- 2.1.4. Wartość zwracana metody (70)
- 2.2. Tworzenie obiektu: działanie biletu (71)
- 2.2.1. Obiekt biletu - przede wszystkim działanie (71)
- 2.2.2. Odpytywanie obiektu biletu (72)
- 2.2.3. Skracanie kodu obiektu biletu za pomocą interpolacji łańcuchów (73)
- 2.2.4. Dostępność biletu: wyrażanie stanu boolowskiego w metodzie (74)
- 2.3. Wbudowane zachowania obiektu (76)
- 2.3.1. Unikatowe identyfikowanie obiektów za pomocą metody object_id (77)
- 2.3.2. Uzyskiwanie możliwości obiektu za pomocą metody respond_to? (78)
- 2.3.3. Wysyłanie komunikatów do obiektów za pomocą metody send (79)
- 2.4. Dokładna analiza argumentów metody (80)
- 2.4.1. Argumenty wymagane i opcjonalne (80)
- 2.4.2. Wartości domyślne argumentów (81)
- 2.4.3. Kolejność parametrów i argumentów (82)
- 2.4.4. Działania niedozwolone w przypadku list argumentów (85)
- 2.5. Zmienne lokalne i przypisywanie do zmiennych (85)
- 2.5.1. Zmienne, obiekty i odwołania (87)
- 2.5.2. Odwołania w przypisaniu do zmiennej i ponowne przypisanie (89)
- 2.5.3. Odwołania i argumenty metody (91)
- 2.5.4. Zmienne lokalne i przypominające je elementy (92)
- 2.6. Podsumowanie (93)
- 3.1. Klasy i instancje (96)
- 3.1.1. Metody instancji (97)
- 3.1.2. Przesłanianie metod (97)
- 3.1.3. Ponowne otwieranie klas (98)
- 3.2. Zmienne instancji i stan obiektu (100)
- 3.2.1. Inicjowanie obiektu ze stanem (102)
- 3.3. Metody ustawiające (103)
- 3.3.1. Znak równości (=) w nazwach metod (104)
- 3.3.2. "Lukier" składniowy dla metod przypominających przypisania (105)
- 3.3.3. Pełnia możliwości metod ustawiających (106)
- 3.4. Atrybuty i rodzina metod attr_* (108)
- 3.4.1. Automatyzowanie tworzenia atrybutów (108)
- 3.4.2. Podsumowanie metod attr_* (111)
- 3.5. Dziedziczenie i hierarchia klas języka Ruby (111)
- 3.5.1. Pojedyncze dziedziczenie: po jednym dla klienta (113)
- 3.5.2. Przodkowie obiektów i nie do końca brakujące łącze: klasa Object (113)
- 3.5.3. Starszy brat El Viejo: BasicObject (114)
- 3.6. Klasy jako obiekty i odbiorcy komunikatów (115)
- 3.6.1. Tworzenie obiektów klasy (115)
- 3.6.2. Wywoływanie metod przez obiekty klasy (116)
- 3.6.3. Metoda pojedynczego obiektu (117)
- 3.6.4. Kiedy i dlaczego należy tworzyć metodę klasy? (119)
- 3.6.5. Porównanie metod klasy z metodami instancji (120)
- 3.7. Szczegóły dotyczące stałych (120)
- 3.7.1. Podstawowe zastosowanie stałych (121)
- 3.7.2. Porównanie ponownego przypisania z modyfikowaniem stałych (123)
- 3.8. "Natura" i "wychowanie" w przypadku obiektów języka Ruby (124)
- 3.9. Podsumowanie (126)
- 4.1. Podstawowe informacje dotyczące tworzenia i używania modułów (128)
- 4.1.1. Moduł hermetyzujący "podobieństwo do stosu" (129)
- 4.1.2. Dodawanie modułu do klasy (131)
- 4.1.3. Bardziej zaawansowane użycie modułów (133)
- 4.2. Moduły, klasy i wyszukiwanie metody (135)
- 4.2.1. Demonstracja podstaw wyszukiwania metod (135)
- 4.2.2. Definiowanie tej samej metody więcej niż raz (138)
- 4.2.3. Sposób działania instrukcji prepend (141)
- 4.2.4. Podsumowanie reguł wyszukiwania metod (142)
- 4.2.5. Nawigacja w obrębie ścieżki wyszukiwania metod za pomocą słowa kluczowego super (143)
- 4.3. Metoda method_missing (145)
- 4.3.1. Łączenie metody method_missing ze słowem kluczowym super (146)
- 4.4. Projekt i nadawanie nazw w przypadku klas i modułów (150)
- 4.4.1. Dodawanie modułów do klas i/lub dziedziczenie (151)
- 4.4.2. Zagnieżdżanie modułów i klas (153)
- 4.5. Podsumowanie (154)
- 5.1. Obiekt self, czyli obiekt bieżący/domyślny (156)
- 5.1.1. Co zostaje obiektem self i w jakim miejscu? (157)
- 5.1.2. Obiekt self najwyższego poziomu (158)
- 5.1.3. Obiekt self w definicjach klas, modułów i metod (159)
- 5.1.4. Obiekt self jako domyślny odbiorca komunikatów (162)
- 5.1.5. Określanie zmiennych instancji za pośrednictwem obiektu self (164)
- 5.2. Określanie zasięgu (166)
- 5.2.1. Zasięg globalny i zmienne globalne (166)
- 5.2.2. Zasięg lokalny (169)
- 5.2.3. Interakcja między zasięgiem lokalnym i obiektem self (171)
- 5.2.4. Zasięg i określanie stałych (173)
- 5.2.5. Składnia zmiennych klasy, zasięg i widoczność (175)
- 5.3. Wdrażanie reguł uzyskiwania dostępu do metod (182)
- 5.3.1. Metody prywatne (182)
- 5.3.2. Metody chronione (186)
- 5.4. Tworzenie i używanie metod najwyższego poziomu (187)
- 5.4.1. Definiowanie metody najwyższego poziomu (187)
- 5.4.2. Predefiniowane (wbudowane) metody najwyższego poziomu (188)
- 5.5. Podsumowanie (189)
- 6.1. Warunkowe wykonywanie kodu (192)
- 6.1.1. Instrukcja if i powiązane z nią instrukcje (192)
- 6.1.2. Składnia przypisania w treści instrukcji warunkowych i testach (197)
- 6.1.3. Instrukcje case (200)
- 6.2. Powtarzanie działań za pomocą pętli (205)
- 6.2.1. Bezwarunkowe wykonywanie pętli za pomocą metody loop (205)
- 6.2.2. Warunkowe wykonywanie pętli za pomocą słów kluczowych while i until (206)
- 6.2.3. Wykonywanie pętli na bazie listy wartości (209)
- 6.3. Iteratory i bloki kodu (209)
- 6.3.1. Elementy iteracji (209)
- 6.3.2. Iteracja w zwykłym stylu (210)
- 6.3.3. Anatomia wywołania metody (210)
- 6.3.4. Porównanie nawiasów klamrowych oraz pary słów kluczowych do i end w składni bloku kodu (211)
- 6.3.5. Implementowanie metody times (213)
- 6.3.6. Ważność metody each (214)
- 6.3.7. Od metody each do metody map (216)
- 6.3.8. Parametry bloku i zasięg zmiennych (218)
- 6.4. Obsługa błędów i wyjątki (221)
- 6.4.1. Zgłaszanie wyjątków i stosowanie dla nich klauzuli rescue (221)
- 6.4.2. Słowo kluczowe rescue na ratunek! (222)
- 6.4.3. Jawne zgłaszanie wyjątków (224)
- 6.4.4. Przechwytywanie wyjątku w klauzuli rescue (225)
- 6.4.5. Klauzula ensure (227)
- 6.4.6. Tworzenie własnych klas wyjątków (228)
- 6.5. Podsumowanie (229)
- 7.1. Konstruktory literałów języka Ruby (234)
- 7.2. Powracający "lukier" składniowy (235)
- 7.2.1. Definiowanie operatorów przez określanie metod (236)
- 7.2.2. Dostosowywanie operatorów jednoargumentowych (238)
- 7.3. Metody z nazwą zakończoną wykrzyknikiem i metody "niebezpieczne" (239)
- 7.3.1. Destrukcyjne efekty (zmieniające odbiorcę) uznawane za "niebezpieczne" (240)
- 7.3.2. Destrukcyjność i "niebezpieczeństwo" zmieniają się niezależnie (241)
- 7.4. Metody wbudowane i niestandardowe to_* służące do konwersji (242)
- 7.4.1. Konwersja łańcucha: metoda to_s (243)
- 7.4.2. Konwersja tablic za pomocą metody to_a i operatora * (246)
- 7.4.3. Konwersja liczb za pomocą metod to_i i to_f (247)
- 7.4.4. Metody z rodziny to_* przyjmujące role (248)
- 7.5. Stany i obiekty boolowskie oraz obiekt nil (250)
- 7.5.1. Obiekty true i false jako stany (251)
- 7.5.2. Obiekty true i false (252)
- 7.5.3. Obiekt specjalny nil (254)
- 7.6. Porównanie dwóch obiektów (255)
- 7.6.1. Testy równości (255)
- 7.6.2. Porównania i moduł Comparable (256)
- 7.7. Inspekcja możliwości obiektów (258)
- 7.7.1. Wyświetlanie listy metod obiektu (259)
- 7.7.2. Odpytywanie obiektów klas i modułów (260)
- 7.7.3. Listy filtrowanych i wybranych metod (261)
- 7.8. Podsumowanie (261)
- 8.1. Zastosowanie łańcuchów (264)
- 8.1.1. Notacja łańcuchów (264)
- 8.1.2. Podstawowe modyfikacje łańcuchów (268)
- 8.1.3. Odpytywanie łańcuchów (272)
- 8.1.4. Porównywanie łańcuchów i określanie ich kolejności (275)
- 8.1.5. Transformacja łańcuchów (276)
- 8.1.6. Konwersje łańcuchów (279)
- 8.1.7. Kodowanie łańcuchów 3 krótkie wprowadzenie (280)
- 8.2. Symbole i ich zastosowanie (282)
- 8.2.1. Główne cechy charakterystyczne symboli (283)
- 8.2.2. Symbole i identyfikatory (284)
- 8.2.3. Symbole w praktyce (286)
- 8.2.4. Porównanie łańcuchów i symboli (288)
- 8.3. Obiekty liczbowe (289)
- 8.3.1. Klasy liczbowe (290)
- 8.3.2. Wykonywanie operacji arytmetycznych (290)
- 8.4. Czas i daty (292)
- 8.4.1. Tworzenie instancji obiektów daty/czasu (293)
- 8.4.2. Metody odpytywania obiektów daty i czasu (295)
- 8.4.3. Metody formatujące datę i czas (296)
- 8.4.4. Metody konwersji daty i czasu (297)
- 8.5. Podsumowanie (299)
- 9.1. Porównanie tablic i tablic asocjacyjnych (302)
- 9.2. Przetwarzanie kolekcji za pomocą tablic (304)
- 9.2.1. Tworzenie nowej tablicy (304)
- 9.2.2. Wstawianie, pobieranie i usuwanie elementów tablicy (308)
- 9.2.3. Łączenie tablic z innymi tablicami (311)
- 9.2.4. Transformacje tablic (312)
- 9.2.5. Odpytywanie tablic (314)
- 9.3. Tablice asocjacyjne (315)
- 9.3.1. Tworzenie nowej tablicy asocjacyjnej (315)
- 9.3.2. Wstawianie, pobieranie i usuwanie par tablic asocjacyjnych (317)
- 9.3.3. Określanie domyślnych wartości i zachowania tablic asocjacyjnych (319)
- 9.3.4. Łączenie tablic asocjacyjnych z innymi tablicami asocjacyjnymi (320)
- 9.3.5. Transformacje tablic asocjacyjnych (321)
- 9.3.6. Odpytywanie tablic asocjacyjnych (322)
- 9.3.7. Tablice asocjacyjne jako ostatnie argumenty metody (323)
- 9.3.8. Powrót do składni argumentów: argumenty nazwane (słów kluczowych) (324)
- 9.4. Zakresy (326)
- 9.4.1. Tworzenie zakresu (327)
- 9.4.2. Logika włączenia do zakresów (328)
- 9.5. Zbiory (330)
- 9.5.1. Tworzenie zbiorów (331)
- 9.5.2. Modyfikowanie elementów zbioru (331)
- 9.5.3. Podzbiory i nadzbiory (334)
- 9.6. Podsumowanie (335)
- 10.1. Zapewnianie możliwości wyliczania za pośrednictwem metody each (338)
- 10.2. Zapytania boolowskie dotyczące modułu Enumerable (340)
- 10.3. Wyszukiwanie i wybieranie obiektów wyliczeniowych (343)
- 10.3.1. Uzyskiwanie pierwszego dopasowania za pomocą metody find (343)
- 10.3.2. Uzyskiwanie wszystkich dopasowań za pomocą metod find_all (inaczej select) i reject (345)
- 10.3.3. Wybieranie dopasowań operatora równości === za pomocą metody grep (345)
- 10.3.4. Organizowanie wyników wybierania za pomocą metod group_by i #partition (347)
- 10.4. Operacje wyliczeniowe dotyczące elementów (348)
- 10.4.1. Metoda first (348)
- 10.4.2. Metody take i drop (350)
- 10.4.3. Metody min i max (350)
- 10.5. Metody powiązane z metodą each (352)
- 10.5.1. Metoda reverse_each (352)
- 10.5.2. Metoda each_with_index (oraz metoda each.with_index) (352)
- 10.5.3. Metody each_slice i each_cons (353)
- 10.5.4. Metoda cycle (354)
- 10.5.5. Zmniejszanie obiektu wyliczeniowego za pomocą metody inject (355)
- 10.6. Metoda map (356)
- 10.6.1. Wartość zwracana metody map (357)
- 10.6.2. Odwzorowywanie wewnętrzne za pomocą metody map! (358)
- 10.7. Łańcuchy jako quazi-obiekty wyliczeniowe (359)
- 10.8. Sortowanie obiektów wyliczeniowych (360)
- 10.8.1. W jaki sposób moduł Comparable przydaje się (albo nie) podczas sortowania obiektów wyliczeniowych? (362)
- 10.8.2. Definiowanie logiki kolejności sortowania przy użyciu bloku (363)
- 10.8.3. Zwięzłe sortowanie za pomocą metody sort_by (364)
- 10.9. Enumeratory i następny wymiar możliwości wyliczania (364)
- 10.9.1. Tworzenie enumeratorów z blokiem kodu (365)
- 10.9.2. Powiązanie enumeratorów z innymi obiektami (367)
- 10.9.3. Niejawne tworzenie enumeratorów za pomocą wywołań iteratora bez użycia bloku kodu (369)
- 10.10. Semantyka enumeratorów i ich zastosowanie (369)
- 10.10.1. Sposób użycia metody each enumeratora (370)
- 10.10.2. Ochrona obiektów za pomocą enumeratorów (372)
- 10.10.3. Rozbudowana iteracja z wykorzystaniem enumeratorów (373)
- 10.10.4. Zapewnianie możliwości wyliczania za pomocą enumeratora (374)
- 10.11. Tworzenie łańcucha metod enumeratora (375)
- 10.11.1. Zmniejszanie liczby obiektów pośrednich (376)
- 10.11.2. Indeksowanie obiektów wyliczeniowych za pomocą metody with_index (377)
- 10.11.3. Operacje alternatywy wykluczającej na łańcuchach z wykorzystaniem enumeratorów (378)
- 10.12. "Leniwe" enumeratory (380)
- 10.12.1. Problem FizzBuzz w przypadku "leniwego" enumeratora (381)
- 10.13. Podsumowanie (382)
- 11.1. Czym są wyrażenia regularne? (386)
- 11.2. Tworzenie wyrażeń regularnych (387)
- 11.2.1. Wyświetlanie wzorców (387)
- 11.2.2. Proste dopasowywanie za pomocą wyrażeń regularnych literału (388)
- 11.3. Tworzenie wzorca w wyrażeniu regularnym (389)
- 11.3.1. Znaki literału we wzorcach (389)
- 11.3.2. Znak wieloznaczny kropki (.) (390)
- 11.3.3. Klasy znaków (390)
- 11.4. Dopasowywanie i przechwytywanie podłańcuchów oraz obiekt MatchData (392)
- 11.4.1. Przechwytywanie dopasowań podrzędnych za pomocą nawiasów okrągłych (392)
- 11.4.2. Dopasowanie pomyślne i zakończone niepowodzeniem (394)
- 11.4.3. Dwa sposoby uzyskiwania przechwyceń (395)
- 11.4.4. Inne informacje zawarte w obiekcie MatchData (397)
- 11.5. Dostrajanie wyrażeń regularnych za pomocą kwantyfikatorów, zakotwiczeń i modyfikatorów (398)
- 11.5.1. Ograniczanie dopasowań za pomocą kwantyfikatorów (398)
- 11.5.2. "Zachłanne" (i inne) kwantyfikatory (400)
- 11.5.3. Zakotwiczenia i asercje wyrażeń regularnych (403)
- 11.5.4. Modyfikatory (406)
- 11.6. Wzajemna konwersja łańcuchów i wyrażeń regularnych (408)
- 11.6.1. Idiomy związane z przepływem od łańcucha do wyrażenia regularnego (408)
- 11.6.2. Przejście od wyrażenia regularnego do łańcucha (410)
- 11.7. Typowe metody używające wyrażeń regularnych (411)
- 11.7.1. Metoda String#scan (411)
- 11.7.2. Metoda String#split (412)
- 11.7.3. sub/sub! i gsub/gsub! (414)
- 11.7.4. Równość przypadków i metoda grep (415)
- 11.8. Podsumowanie (417)
- 12.1. Struktura systemu operacji wejścia-wyjścia w języku Ruby (420)
- 12.1.1. Klasa IO (420)
- 12.1.2. Obiekty IO jako obiekty wyliczeniowe (421)
- 12.1.3. Obiekty STDIN, STDOUT i STDERR (422)
- 12.1.4. Trochę więcej o danych wprowadzanych za pomocą klawiatury (423)
- 12.2. Podstawowe operacje na plikach (424)
- 12.2.1. Podstawy operacji odczytywania z plików (424)
- 12.2.2. Odczytywanie plików oparte na wierszach (425)
- 12.2.3. Odczytywanie plików w oparciu o bajty i znaki (426)
- 12.2.4. Szukanie pozycji w pliku oraz odpytywanie o nią (427)
- 12.2.5. Odczytywanie plików za pomocą metod klasy File (428)
- 12.2.6. Zapisywanie w plikach (429)
- 12.2.7. Użycie bloków do określania zasięgu operacji na plikach (430)
- 12.2.8. Możliwości wyliczeniowe plików (431)
- 12.2.9. Wyjątki i błędy dotyczące plikowych operacji wejścia-wyjścia (432)
- 12.3. Odpytywanie obiektów IO i File (433)
- 12.3.1. Uzyskiwanie informacji z klasy File i modułu FileTest (434)
- 12.3.2. Uzyskiwanie informacji o plikach za pomocą klasy File::Stat (435)
- 12.4. Modyfikowanie katalogów za pomocą klasy Dir (436)
- 12.4.1. Wczytywanie pozycji katalogu (436)
- 12.4.2. Modyfikowanie i odpytywanie katalogów (439)
- 12.5. Narzędzia plikowe biblioteki standardowej (440)
- 12.5.1. Moduł FileUtils (440)
- 12.5.2. Klasa Pathname (442)
- 12.5.3. Klasa StringIO (444)
- 12.5.4. Moduł open-uri (446)
- 12.6. Podsumowanie (446)
- 13.1. Tam, gdzie znajdują się metody pojedynczego obiektu: klasa pojedynczych obiektów (452)
- 13.1.1. Podwójne określanie za pomocą klas pojedynczych obiektów (453)
- 13.1.2. Bezpośrednie sprawdzanie i modyfikowanie klasy pojedynczych obiektów (454)
- 13.1.3. Klasy pojedynczych obiektów w ścieżce wyszukiwania metod (456)
- 13.1.4. Metoda singleton_class (461)
- 13.1.5. Obszerne omówienie metod klasy (461)
- 13.2. Modyfikowanie podstawowych klas i modułów języka Ruby (463)
- 13.2.1. Zagrożenia związane z modyfikowaniem podstawowych funkcjonalności (463)
- 13.2.2. Zmiany addytywne (469)
- 13.2.3. Zmiany z przekazaniem (469)
- 13.2.4. Zmiany poszczególnych obiektów za pomocą metody extend (472)
- 13.2.5. Użycie doprecyzowań do zmiany zachowania podstawowych obiektów (475)
- 13.3. BasicObject jako przodek i klasa (476)
- 13.3.1. Użycie klasy BasicObject (476)
- 13.3.2. Implementowanie podklasy klasy BasicObject (478)
- 13.4. Podsumowanie (480)
- 14.1. Podstawowe funkcje anonimowe: klasa Proc (484)
- 14.1.1. Obiekty Proc (484)
- 14.1.2. Obiekty Proc i bloki oraz różnice między nimi (485)
- 14.1.3. Konwersje dotyczące bloków i obiektów Proc (487)
- 14.1.4. Użycie metody Symbol#to_proc do zapewnienia zwięzłości (490)
- 14.1.5. Obiekty Proc w roli domknięć (491)
- 14.1.6. Argumenty i parametry obiektu Proc (494)
- 14.2. Tworzenie funkcji za pomocą metody lambda i konstruktora -> (494)
- 14.3. Metody jako obiekty (496)
- 14.3.1. Przechwytywanie obiektów Method (496)
- 14.3.2. Powody używania metod jako obiektów (497)
- 14.4. Rodzina metod eval (499)
- 14.4.1. Przetwarzanie dowolnych łańcuchów jako kodu za pomocą metody eval (499)
- 14.4.2. Zagrożenia stwarzane przez metodę eval (501)
- 14.4.3. Metoda instance_eval (501)
- 14.4.4. Użycie metody class_eval (inaczej module_eval) (503)
- 14.5. Równoległe wykonywanie za pomocą wątków (505)
- 14.5.1. Kończenie działania, zatrzymywanie i uruchamianie wątków (506)
- 14.5.2. Serwer dat z wątkami (508)
- 14.5.3. Tworzenie serwera rozmów sieciowych używającego gniazd i wątków (509)
- 14.5.4. Wątki i zmienne (511)
- 14.5.5. Modyfikowanie kluczy wątków (512)
- 14.6. Wykonywanie poleceń systemowych w obrębie programów Ruby (515)
- 14.6.1. Metoda system i odwrócone apostrofy (515)
- 14.6.2. Komunikacja z programami za pośrednictwem metod open i Open3.popen3 (518)
- 14.7. Podsumowanie (521)
- 15.1. Wywołania zwrotne i "haki" (524)
- 15.1.1. Przechwytywanie nierozpoznanych komunikatów za pomocą metody method_missing (525)
- 15.1.2. Wychwytywanie operacji dołączania i wstawiania na początku (528)
- 15.1.3. Przechwytywanie operacji rozszerzania (529)
- 15.1.4. Przechwytywanie dziedziczenia za pomocą metody Class#inherited (531)
- 15.1.5. Metoda Module#const_missing (532)
- 15.1.6. Metody method_added i singleton_method_added (533)
- 15.2. Interpretowanie zapytań dotyczących możliwości obiektów (535)
- 15.2.1. Wyświetlanie metod nieprywatnych obiektu (535)
- 15.2.2. Wyświetlanie listy metod prywatnych i chronionych (537)
- 15.2.3. Uzyskiwanie metod instancji klas i modułów (539)
- 15.2.4. Wyświetlanie listy metod pojedynczego obiektu danego obiektu (541)
- 15.3. Introspekcja zmiennych i stałych (543)
- 15.3.1. Wyświetlanie listy zmiennych lokalnych lub globalnych (543)
- 15.3.2. Wyświetlanie listy zmiennych instancji (543)
- 15.4. Śledzenie wykonywania kodu (544)
- 15.4.1. Sprawdzanie danych śledzenia stosu za pomocą metody caller (544)
- 15.4.2. Tworzenie narzędzia do analizowania danych śledzenia stosu (546)
- 15.5. Wywołania zwrotne i inspekcja metod w praktyce (549)
- 15.5.1. Fundament środowiska MicroTest: MiniTest (549)
- 15.5.2. Określanie i implementowanie narzędzia MicroTest (551)
- 15.6. Podsumowanie (554)
Przedmowa (17)
Przedmowa do pierwszego wydania (19)
Podziękowania (21)
O książce (23)
CZĘŚĆ I. FUNDAMENTY JĘZYKA RUBY (29)
Rozdział 1. Wprowadzenie do nauki języka Ruby (31)
Rozdział 2. Obiekty, metody i zmienne lokalne (65)
Rozdział 3. Organizowanie obiektów za pomocą klas (95)
Rozdział 4. Moduły i organizacja programu (127)
Rozdział 5. Obiekt domyślny (self), zasięg i widoczność (155)
Rozdział 6. Techniki przepływu sterowania (191)
CZĘŚĆ II. WBUDOWANE KLASY I MODUŁY (231)
Rozdział 7. Wbudowane elementy podstawowe (233)
Rozdział 8. Łańcuchy, symbole i inne obiekty skalarne (263)
Rozdział 9. Obiekty kolekcji i kontenerów (301)
Rozdział 10. Kolekcje: moduł Enumerable i klasa Enumerator (337)
Rozdział 11. Wyrażenie regularne i operacje na łańcuchach oparte na wyrażeniach regularnych (385)
Rozdział 12. Operacje wejścia-wyjścia i operacje na plikach (419)
CZĘŚĆ III. DYNAMIKA JĘZYKA RUBY (449)
Rozdział 13. Indywidualizacja obiektów (451)
Rozdział 14. Obiekty umożliwiające wywoływanie i uruchamianie (483)
Rozdział 15. Wywołania zwrotne, "haki" i introspekcja w czasie wykonywania kodu (523)
Skorowidz (557)
Helion - inne książki
-
W tej książce omówiono techniki wdrażania systemów na platformie AWS i zasady zarządzania nimi. Zaprezentowano podstawy korzystania z usługi Identity and Access Management oraz narzędzia sieciowe i monitorujące chmury AWS. Poruszono tematy Virtual Private Cloud, Elastic Compute Cloud, równoważeni...
AWS dla administratorów systemów. Tworzenie i utrzymywanie niezawodnych aplikacji chmurowych AWS dla administratorów systemów. Tworzenie i utrzymywanie niezawodnych aplikacji chmurowych
(0,00 zł najniższa cena z 30 dni)51.35 zł
79.00 zł(-35%) -
Ta książka jest przeznaczona dla osób, które chcą zrozumieć działanie Lightning Network i wykorzystać możliwości tej technologii we własnych aplikacjach. Z lektury tej pozycji skorzystają programiści, architekci systemowi i inżynierowie. Omówiono w niej podstawy funkcjonowania sieci LN i sposoby ...
Lightning Network dla praktyków. Protokół drugiej warstwy i jego wykorzystanie do obsługi płatności bitcoinami Lightning Network dla praktyków. Protokół drugiej warstwy i jego wykorzystanie do obsługi płatności bitcoinami
(0,00 zł najniższa cena z 30 dni)77.35 zł
119.00 zł(-35%) -
Nie trzeba siedzieć po uszy w programowaniu, by zauważyć pewną regułę: lwia część książek poświęconych temu zagadnieniu została napisana w podobny sposób. I nie chodzi o styl, środowisko czy język, lecz o strukturę. Prawidłowość tę zauważył Łukasz Sosna, który do zagadnienia programowania w język...
Visual Studio 2022, C# i .NET. Programowanie kontrolek Visual Studio 2022, C# i .NET. Programowanie kontrolek
(0,00 zł najniższa cena z 30 dni)32.44 zł
49.90 zł(-35%) -
IT przeżywa rozkwit, czego dowodem jest to, że w pierwszym półroczu 2022 roku 25 procent ogłoszeń o pracy było skierowanych właśnie do przedstawicieli tej branży. Na ten imponujący wynik składają się oferty dla specjalistów do spraw rozwoju oprogramowania (16 procent wszystkich ogłoszeń). Nic wię...
Ścieżka testera. Certyfikat ISTQB w pytaniach i odpowiedziach Ścieżka testera. Certyfikat ISTQB w pytaniach i odpowiedziach
(0,00 zł najniższa cena z 30 dni)44.85 zł
69.00 zł(-35%) -
Dzięki tej książce nauczysz się programować w języku VBA. Dowiesz się także, w jaki sposób można zautomatyzować wiele żmudnych czynności wykonywanych w Excelu i w innych aplikacjach pakietu MS Office. Naukę rozpoczniesz od podstaw, które podano tu w przystępnej i zrozumiałej formie. Dowiesz się, ...
Automatyzacja w VBA dla Excela 2019. Receptury. Jak przyspieszać rutynowe zadania i zwiększać efektywność pracy Automatyzacja w VBA dla Excela 2019. Receptury. Jak przyspieszać rutynowe zadania i zwiększać efektywność pracy
(0,00 zł najniższa cena z 30 dni)51.35 zł
79.00 zł(-35%) -
Oto pierwszy tom dzieła, które stanowi inspirujące spojrzenie na sztuczną inteligencję. Jego zrozumienie nie wymaga wybitnej znajomości informatyki i matematyki. Książka jest wspaniałą syntezą wczesnych i późniejszych koncepcji, a także technik, przeprowadzoną we frameworku idei, metod i technolo...
Sztuczna inteligencja. Nowe spojrzenie. Wydanie IV. Tom 1 Sztuczna inteligencja. Nowe spojrzenie. Wydanie IV. Tom 1
(0,00 zł najniższa cena z 30 dni)109.85 zł
169.00 zł(-35%) -
Ta książka jest znakomitym wprowadzeniem do Power BI. Dzięki niej nauczysz się modelowania danych, technik definiowania relacji oraz tworzenia modeli danych. Dowiesz się też, jak prowadzić obliczenia za pomocą funkcji modelowania. Poznasz także podstawy pisania kodu w języku DAX i korzystania z n...
Modelowanie danych z Power BI dla ekspertów analityki. Jak w pełni wykorzystać możliwości Power BI Modelowanie danych z Power BI dla ekspertów analityki. Jak w pełni wykorzystać możliwości Power BI
(0,00 zł najniższa cena z 30 dni)77.35 zł
119.00 zł(-35%) -
To drugi tom klasycznego podręcznika wiedzy o sztucznej inteligencji. Podobnie jak w wypadku pierwszej części, lektura tej książki nie wymaga wybitnej znajomości tematu. Dzięki przejrzystości tekstu i umiejętnemu unikaniu nadmiernego formalizmu można w dość łatwy sposób zrozumieć kluczowe idee i ...
Sztuczna inteligencja. Nowe spojrzenie. Wydanie IV. Tom 2 Sztuczna inteligencja. Nowe spojrzenie. Wydanie IV. Tom 2
(0,00 zł najniższa cena z 30 dni)83.85 zł
129.00 zł(-35%) -
Ta książka powinna zostać przestudiowana przez każdego architekta nowoczesnych systemów rozproszonych. Jej celem jest pokazanie sposobów rozwiązywania trudnych problemów związanych z projektowaniem takiego oprogramowania. W krytyczny i wszechstronny sposób omówiono w niej najważniejsze problemy u...
Złożone zagadnienia architektury oprogramowania. Jak analizować kompromisy i podejmować trudne decyzje Złożone zagadnienia architektury oprogramowania. Jak analizować kompromisy i podejmować trudne decyzje
(0,00 zł najniższa cena z 30 dni)64.35 zł
99.00 zł(-35%) -
Autor tego zbioru zadań jest programistą i nauczycielem. To prawdziwy pasjonat programowania ― w tym w języku C++ ― które traktuje jak przedłużenie ludzkiej mowy. Uważa, że praktycznie na wszystko, co robimy w życiu, można spojrzeć jak na wykonywanie funkcji i algorytmów, które opisuj...(0,00 zł najniższa cena z 30 dni)
22.20 zł
37.00 zł(-40%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
W przypadku usługi "Druk na żądanie" termin dostarczenia przesyłki może obejmować także czas potrzebny na dodruk (do 10 dni roboczych)
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.


Oceny i opinie klientów: Ruby. Przewodnik programisty. Wydanie II David A. Black (6)
Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.
(3)
(1)
(0)
(0)
(0)
(2)
Rajmund Radziewicz,
Data dodania: 2017-02-12 Ocena: 6 Opinia potwierdzona zakupem
Przemek, Analityk biznesowy
Data dodania: 2015-12-24 Ocena: 6 Opinia niepotwierdzona zakupem
Data dodania: 2015-10-31 Ocena: 6 Opinia potwierdzona zakupem
Software Engineer
Data dodania: 2016-01-22 Ocena: 5 Opinia potwierdzona zakupem
Wojtek S,
Data dodania: 2015-12-25 Ocena: 1 Opinia niepotwierdzona zakupem
Przemek K, Programista
Data dodania: 2015-12-25 Ocena: 1 Opinia niepotwierdzona zakupem
więcej opinii