Kategorie:
Ruby on Rails,
Go, Perl, Ruby, Erlang, inne języki programowania
Ruby on Rails jest zaawansowanym środowiskiem (frameworkiem) pozwalającym na szybkie i bezstresowe tworzenie efektownych i zaawansowanych serwisów / aplikacji internetowych (stron WWW). Jak głosi samo hasło przewodnie środowiska, Ruby on Rails zapewnia równowagę pomiędzy produktywnością, a czerpaniem przyjemności z programowania i pozwala na tworzenie pięknego kodu preferując konwencję nad konfiguracją.
Rails pozwala na tworzenie aplikacji internetowych opartych o bazy danych bazując na wzorcu MVC (Model-View-Controller). Daje możliwość bardzo efektownego wykorzystania Ajax’a dostępnego w widokach (View), sprawne generowanie zapytań i odpowiedzi w kontrolerach (Controller) oraz budowanie zaawansowanej logiki biznesowej w modelach (Model).
Podstawowe trzy zasady, na których zachowanie kładzie nacisk środowisko to:
- DRY (don’t repeat yourself – nie powatarzaj się) – kod aplikacji powinien być tak tworzony, aby można było go wykorzystać w wielu miejscach. Dzięki temu można uniknąc pisania tej samej logiki w różnych miejscach programu.
- Konwencja ponad konfigurację – autorzy środowiska wykorzystują wiele praktycznych konwencji i założeń na temat aplikacji, dzięki czemu programista może uniknąc zbędnej, żmudnej (i powtarzalnej) konfiguracji swojej aplikacji i środowiska. Oczywiście większość konwencji można nadpisać własną konfiguracją, jeżeli zajdzie taka konieczność.
- Szybkie wprowadzanie zmian – zintegrowany serwer WWW oraz interpretowany język pozwalają na bardzo szybkie obserwowanie zmian wprowadzonych w kodzie (brak kompilacji i konieczności restartów), co minimalizuje czas potrzebny na rozwijanie aplikacji. Duży nacisk na testowanie kodu i wykorzystanie technik TDD pozwalają na szybkie aktualizowanie aplikacji bez ryzyka wprowadzenia błędów i regresji.
Czas trwania
3 dni
Program
Podczas trzech dni szkolenia uczestnicy stworzą od podstaw aplikację do prowadzenia Bloga. Serwis będzie pozwalał na publikowanie artykułów przez różnych autorów, dodawanie komentarzy do artykułów i ich moderowanie.
- Wprowadzenie, podstawowa architektura, modele
- wprowadzenie i historia Rails (bardzo pobieżnie)
- architektura Model-View-Controller
- elementy projektu w środowisku Rails
- struktura katalogów projektu
- konwencje w nazewnictwie
- pojęcie zasobu oraz konwencje REST
- ActiveRecord i ORM (Object-Relational Mapping)
- migracje
- zależoności między modelami (has_one, belongs_to, itp)
- walidacja modeli
- metody zwrotne (callbacks) w modelach
- wykorzystanie konsoli podczas programowania (omówienie rozszerzeń typh Hirb)
- Warstwa widoku i kontrolera, szablony
- ActionController – kontrolery
- ciastka i zarządzanie sesją
- filtry w kontrolerach
- ścieżki (routes)
- ActionView – widoki
- szablony (layouts) i partiale (partials) oraz metody pomocnicze (helpers)
- języki szablonów (ERB, Haml, Slim)
- krótkie wprowadzenie do Twitter Bootstrap i szablonów styli
- ajax (JQuery oraz szablony RJS)
- generatory i rake
- różne środowiska aplikacji (production/development/test)
- Zaawansowane technologie, najpopularniejsze biblioteki
- zarządzanie CSS i Javascript w aplikacji (asset pipeline)
- pobieżnie o Less, Sass i CoffeeScript
- bezpieczeństwo aplikacji WWW
- najlepsze praktyki Rails
- polecane biblioteki (Gemy) do powtarzających się zadań:
- autentykacja (Devise)
- autoryzacja (Cancan, Rolify)
- zdania w tle (Sidekiq, Resque, ActiveJob)
- obrazy i inne załączniki (Paperclip, CarrierWave)
- raportowanie wyjątków (Errbit)
- testowanie (Guard, RSpec, Minitest)
- użyteczne Gemy ułatwiające rozwój aplikacji
- BetterErrors
- Pry
- Debugger
- Faker
- pamięć podręczna aplikacji Rails (caching)
Pobierz w wersji PDF
Training also available in English - for more information see here.
Przeznaczenie i wymagania
Program szkolenia zakłada dobrą znajomość podstawowych technik programowania ogólnie (zmienne, pętle, warunki, funkcje, obiekty). Znajomość dowolnego języka programowania znacząco ułatwi przyswojenie materiału przedstawianego na kursie. Wcześniejsze doświadczenia z językiem Ruby nie są konieczne, ponieważ sam jeżyk zostanie stopniowo omówiony podczas kursu.
Zlecane jest również ogólnie dobre rozeznanie w koncepcjach związanych z tworzeniem stron WWW. Poniżej znajduje się podsumowanie zaleceń co do wstępnej wiedzy i umiejętności uczestników. Zwracamy uwagę, że znajomość wszystkich wymienionych elementów nie jest konieczna, ale im większe rozeznanie w okolicznych technologiach, tym łatwiejsze będzie zrozumienie programu kursu.
- znajomość podstawowych koncepcji i konstrukcji w programowaniu
- podstawowa znajomość ogólnych zagadnień związanych z tworzeniem aplikacji WWW
- bazowa znajomość HTML i CSS
- ogólne rozumienie protokołu HTTP oraz zagadnień takich jak przekierowania, SSL, różnic między GET, a POST
- zalecana jest podstawowa znajomość języka Javascript (i podstaw JQuery)
- zalecana jest podstawowa znajomość SQL i bazy danych MySQL lub Postgres
Certyfikaty
Uczestnicy otrzymują certyfikaty ukończenia kursu sygnowane przez ALX. Każdy uczestnik po zakończeniu szkolenia będzie posiadał następujące umiejętności / wiedzę:
- znajomość języka Ruby
- umiejętność zbudowania od podstaw aplikacji w Ruby on Rails
- zarządzanie bazą danych aplikacji RoR poprzez migracje
- umiejętność tworzenia zaawansowanej logiki aplikacji przez relacje ActiveRecord
- podstawy budowania interfejsu użytkownika w oparciu o Ajax
- wyszukiwanie i wykorzystywanie zewnętrznych bibliotek (Gemów) w Aplikacjach Rails
- podstawowe rozumienie idei technik TDD
- umiejętność konfiguracji ścieżek (routes) w aplikacjach Rails
- zrozumienie podstawowych dobrych praktyk związanych z tworzeniem stron WWW w Rails
Lokalizacja
Zajęcia realizujemy zdalnie w trybie "wirtualnej klasy" oraz stacjonarnie w naszych salach komputerowych (adresy).
Tryby zdalne - Wirtualna Klasa, na żywo z trenerem
Forma zajęć w trybie zdalnym (wideokonferencyjnym, "wirtualna klasa") wygląda analogicznie jak zajęcia realizowane w naszym standardowym trybie - tylko bez wychodzenia z domu lub firmy. Nie ma tutaj filmów (gotowych nagrań) do oglądania, jest trener na żywo, który cały czas prowadzi zajęcia, opowiada, na bieżąco reaguje i ma kontakt z grupą. Zajęcia są prowadzone przez tych samych trenerów, którzy prowadzą kursy "stacjonarne" według tego samego programu.
Uczestnicy mogą liczyć na pomoc trenera, ale też mają kontakt z innymi kursantami - dokładnie tak samo, jak na kursach stacjonarnych. Dużą uwagę poświęcamy temu, aby w jak największym stopniu zachować warsztatowy charakter naszych zajęć.
W praktyce szkolenie wygląda tak, że kursant otrzymuje zaproszenie z linkiem, po kliknięciu którego połączy się z nami zdalnie przy użyciu specjalistycznego systemu telekonferencyjnego, tworząc "wirtualną klasę". Kursant będzie widział prowadzącego, oraz będzie miał obraz z rzutnika. Czas szkolenia będzie taki sam jak w naszej sali szkoleniowej. Podczas zajęć, oprócz wizji, fonii, będzie dostęp do czatu tekstowego (z trenerem i z grupą - innymi uczestnikami), jest możliwość przekazywania sobie plików/załączników, pokazywania fragmentów kodu (w przypadku szkoleń z programowania), zadawania pytań, otrzymywania poprawek itp. Na prośbę uczestnika, prowadzący może również uzyskać dostęp do całości ekranu i kursora komputera kursanta ("przejęcie myszy i klawiatury"), do okna z formułami czy do pola z komendami, a w przypadku szkoleń programistycznych do okna z kodem - aby poprawić fragment programu, skomentować, czy zwyczajnie pokazać jak wykonać daną czynność.
W zdalnych trybach jest dokładnie tyle samo godzin zajęć - i zajęcia odbywają się w takich samych godzinach jak zajęcia stacjonarne.
Po zakończeniu kursu otrzymają Państwo ten sam certyfikat (bez względu na formę zajęć), a trener będzie dostępny po zakończeniu bloku szkoleniowego, żeby odpowiedzieć na wszelkie dodatkowe pytania. Pełne informacje o tym jak wyglądają oraz jak prowadzimy szkolenia w trybach zdalnych dostępne są na stronie: kursy zdalne (online).
Tryby zajęć stacjonarnych
Dostępne są terminy weekendowe (zaoczne - soboty i niedziele), dzienne (w tygodniu) oraz wieczorowe (w tygodniu w godzinach 18:00 - 20:30).
Lokalizacje
- Zdalnie –
- Warszawa – ul. Jasna 14/16A
- Kraków – ul. św. Filipa 23
- Katowice – ul. Stawowa 10
- Gdańsk – ul. Toruńska 12
- Poznań – ul. Towarowa 35
- Wrocław – ul. Rynek 35
- Łódź – ul. Wólczańska 4a
- Online (EN) – your home, office or wherever you want
- Warsaw (EN) – Jasna 14/16A
- na życzenie dowolne miejsce w Polsce, lub UE (zajęcia prowadzone w języku angielskim)
Godziny szkolenia
Zajęcia standardowo odbywają się w godzinach 9-17 (po 8 godzin zegarowych
dziennie, w tym przerwa obiadowa oraz krótkie przerwy w trakcie zajęć).
Przy szkoleniach na zamówienie, dokładne godziny mogą być uzgodnione z
Klientem wedle jego preferencji.
Wielkości grup
Szkolenia ogólnodostępne odbywają się w grupach do
8 osób.
W trybie na zamówienie możliwe są grupy dowolnej wielkości - według preferencji Klienta. Ze względu na jakość szkolenia i skuteczność przekazywania wiedzy, sugerujemy jednak, aby grupy nie były większe niż 12 osób.
Szkolenie jest realizowane w trybie zamkniętym, dla grup od 4 osób.
Szkolenia zamknięte prowadzimy w naszych salach, w siedzibie Klienta, lub w dowolnej lokalizacji na terenie Polski, lub UE (w jęz. polskim lub angielskim). Dla grup możliwe są dowolne tryby zajęć - godziny pracy, wieczory, weekendy. Możliwe jest również dostosowanie tematów kursu do indywidualnych potrzeb Klienta.
Cena szkolenia na zamówienie jest wyliczana indywidualnie dla każdego zamówienia. Dzięki temu koszt szkolenia w przeliczeniu na uczestnika może być znacznie korzystniejszy niż przy szkoleniach w grupach ogólnodostępnych (ceny podane na stronie) - zwłaszcza w przypadku większych grup.
Zapytaj i zaproponuj termin
Lub prosimy o kontakt.
Konsultacje indywidualne
W przypadku, gdy nie zgłasza się grupy zorganizowanej, a wybrane szkolenie nie ma terminu otwartego lub terminy są nieodpowiednie - w zakresie większości zagadnień i programów można zamówić również indywidualne konsultacje.
W ramach konsultacji indywidualnych nie tylko szkolimy, ale również rozwiązujemy problemy, pomagamy dobrać odpowiednie rozwiązania, doradzamy, jak efektywnie używać wybranych narzędzi.
Więcej informacji na temat konsultacji znajduje się na osobnej stronie Konsultacje. Zachęcamy również do kontaktu z naszym biurem.
Cena szkolenia
2780 PLN netto (VAT 23%)
Cena za jedną osobę, w grupie ogólnodostępnej (otwartej), o standardowej wielkości. Dla grup istnieje również możliwość organizacji szkolenia zamkniętego. Więcej w zakładce „Na zamówienie”.
W cenę szkoleń organizowanych w naszej siedzibie wliczone są:
- autorskie
materiały szkoleniowe,
- indywidualne stanowisko komputerowe do pracy podczas zajęć,
- certyfikaty ukończenia szkolenia,
- obiady,
- drobny poczęstunek oraz ciepłe i zimne napoje,
- możliwość jednorazowego kontaktu z instruktorem (instruktorami) po szkoleniu i zadawania pytań dotyczących materiału szkolenia.
W wypadku podmiotów publicznych lub finansowania ze środków publicznych, możliwe jest zwolnienie z VAT. Szczegóły na osobnej stronie.
Upusty i rabaty
- 7% - rabat dla stałych klientów
- ważny na: wszystkie kursy i szkolenia;
- dla: osoby, lub pracownika firmy, która wcześniej delegowała co najmniej jednego pracownika na jakikolwiek nasz kurs lub szkolenie.
- 5% - "polecający, polecony" - poleć nasz kurs znajomemu (znajomej) lub współpracownikowi i przyprowadź go (ją) ze sobą, a obie osoby dostaną po 5% rabatu (dotyczy kursów zawodowych).
- 5% - dla posiadaczy karty EURO<26.
- 3% - dla wszystkich studentów, za okazaniem skanu ważnej legitymacji.
- 3% - rabat "first minute" - za wczesny zapis na kurs zawodowy/bootcamp (nie dotyczy szkoleń). Przysługuje przy zapisie na kurs najpóźniej na 30 dni przed startem zajęć.
- W przypadku zapisów online i skorzystania z rabatu za wczesny zapis należy przesłać podpisane zgłoszenie w ciągu 48 godzin od zapisania się (w uzasadnionych przypadkach możemy termin wydłużyć).
- oferta rabatowa obowiązuje przy płatności z góry w terminie do 7 dni przed rozpoczęciem zajęć, w oparciu o nasz standardowy formularz zgłoszeniowy lub standardową umowę szkolenia.
- Standardowe rabaty, oferty i promocje nie obowiązują w przypadku skierowań przez podmioty trzecie.
- Przy zgłoszeniach grupowych i szkoleniach na zamówienie (zamkniętych) oferujemy atrakcyjne rabaty, które są ustalane indywidualnie.
- rabaty, oferty i promocje nie łączą się.