Polskie kursy programowania w Ruby dla początkujących i zaawansowanych

Zapraszamy do przetestowania darmowych lekcji (dla zalogowanych - 6, niezalogowani - 2) videokursów poświęconych programowaniu w Ruby.

Dla użytkowników forum, z kuponem rabatowym FORUMRUBY, 15% zniżki na obydwa szkolenia.

Pierwsze szkolenie “Ruby. Podstawy języka i praktyczne przykłady” przeznaczone jest dla początkujących i obejmuje tematy:

  1. Wprowadzenie
  • Instalacja
  • pierwszy program: Hello World
  • irb: interaktywna konsola Ruby’ego
  • Jaki edytor do Ruby’ego?
  1. Podstawy
  • Obiekty i zmienne
  • Liczby
  • Tablice
  • Stringi
  • Symbole
  • Hashe
  • Wartości true oraz false
  • Stałe
  • Przedziały
  • Wyrażenia
  • Wyrażenia regularne
  1. Struktury kontrolne
  • Wyrażenia warunkowe
  • Instrukcja case, while oraz until
  • Iteratory
  • Wyjątki
  1. Metody
  • Metody, zwracanie wartości, argumenty
  • Wartości domyślne argumentów
  • Argumenty nazwane
  • Dynamiczna liczba argumentów
  • Bloki
  • proc i lambda
  1. Programowanie obiektowe
  • Klasy i obiekty
  • Zmienne instancji i atrybuty
  • Konstruktor
  • Dziedziczenie, instrukcja super
  • Metody klasy i atrybuty klasy
  • Kontrola dostępu
  • Operatory
  1. Moduły
  • Moduły jako przestrzenie nazw
  • Moduły jako miksiny
  • Miksiny: przykłady
  1. Dynamiczne aspekty języka
  • Otwarte klasy
  • Metoda method_missing
  • Metoda define_method
  1. Ekosystem języka
  • Polecenie require
  • RubyGems: repozytorium bibliotek i menedżer pakietów
  • Bundler: zarządzanie zależnościami
  • Pisanie automatycznych testów
  1. Projekty praktyczne

Do kursu dołączony jest ebook “Ruby. Wprowadzenie” (Michael Fitzgerald)

Zakres kursu dla bardziej zaawansowanych użytkowników “Programowanie w Ruby. Zaawansowane techniki” obejmuje:

  1. Wprowadzenie
  • Rozgrzewka: Budowanie kwerend SQL a’la ActiveRecord
  1. Model obiektowy i metaprogramowanie
  • Hierarchia klas
  • Czym jest self w różnych miejscach kodu
  • Implementacja dziedziczenia prototypowego
  • Dziedziczenie z modułów poprzez include i extend
  • Dziedziczenie z modułów poprzez prepend
  • Metody instance_eval oraz instance_exec
  • Wiązania (bindings)
  1. Projekt: DSL do importowania CSV
  • Zaprojektowanie DSL-a
  • Zbudowanie szkieletu DSL-a
  • Implementacja przechowania konfiguracji
  • Implementacja importu i konwersji danych
  1. Projekt: DSL będący imitacją RSpec
  • Zbudowanie szkieletu DSL-a
  • Implementacja składni expect
  • Implementacja procesu porównania
  1. Wzorce projektowe i biblioteka standardowa
  • Wzorzec dekoratora
  • Wzorzec obserwatora
  • Moduł Comparable
  • Enumeratory oraz moduł Enumerable
  • Enumeracja leniwa
  1. Programowanie współbieżne
  • Wątki
  • Biblioteka concurrent_ruby
  • Biblioteka EventMachine
  • Biblioteka Celluloid
  • Własna implementacja aktora
  • Analiza kodu: chat server
  1. Narzędzia
  • Pry: kolorowy irb i debugger w jednym
  • Mierzenie wydajności kodu
  • Trasowanie wywołań
  • Profilowanie pamięci
  • Rubocop: dbanie o styl kodu
  • JRuby: Ruby uruchomiony na platformie Java