Ruby on Rails

Ruby on Rails

BACKEND

Full-stack framework webowy zbudowany w Ruby oferujący podejście "Convention over Configuration" i "Don't Repeat Yourself" dla maksymalizacji produktywności. Dojrzała architektura MVC z Active Record ORM, automatycznym scaffoldingiem, solidnym systemem migracji i kompletnym ekosystemem dla REST API i nowoczesnych aplikacji webowych.

Czego się nauczysz

Nowoczesny Ruby z elegancką składnią, blokami, metaprogramowaniem i gemami

Active Record ORM z asocjacjami, walidacjami, callbackami i migracjami

Convention over Configuration dla maksymalnej produktywności

Generatory Rails do szybkiego scaffoldingu (modele, kontrolery, migracje)

Action Cable do natywnie zintegrowanych WebSocketów w czasie rzeczywistym

Active Storage do przesyłania plików z chmurowym przechowywaniem (S3, GCS)

Action Mailer do emaili transakcyjnych z szablonami ERB

Active Job do zadań w tle z adapterami (Sidekiq, Resque, Delayed Job)

Kompleksowe testowanie (RSpec, Minitest, fixtures, fabryki z FactoryBot)

Wydajność z cache (Redis, Memcached), eager loading i turbo-rails

Kluczowe tematy do opanowania

Najważniejsze pojęcia do zrozumienia tej technologii i zdania rozmów

1

Ruby: bloki, proc, lambda, symbole, metaprogramowanie, moduły i mixiny

2

Architektura Rails: wzorzec MVC, config/routes.rb, autoloading, Zeitwerk

3

Active Record: modele, asocjacje (has_many, belongs_to, has_and_belongs_to_many)

4

Walidacje AR: presence, uniqueness, niestandardowe walidatory, konteksty walidacji

5

Callbacki AR: before_save, after_create, around_update, hooki cyklu życia

6

Migracje: create_table, add_column, change_column, rollback, schema.rb

7

Routing: resources, zagnieżdżone trasy, przestrzenie nazw, ograniczenia, helpery tras

8

Kontrolery: params, strong parameters, filtry (before_action), respond_to

9

Widoki: szablony ERB, partiale, helpery, layouty, content_for/yield

10

Zapytania Active Record: where, joins, includes, preload, eager_load (zapobieganie N+1)

11

Tryb API Rails: aplikacje tylko API, serializery (ActiveModel::Serializers, jbuilder)

12

Uwierzytelnianie: gem Devise, has_secure_password, zarządzanie sesjami, cookies

13

Autoryzacja: gem Pundit, CanCanCan, polityki, kontrola dostępu oparta na rolach

14

Action Cable: kanały, strumienie, broadcasting, połączenia WebSocket

15

Active Job: perform_later, adaptery kolejek (Sidekiq), priorytety zadań, logika ponawiania

16

Active Storage: załączniki (has_one_attached, has_many_attached), warianty, bezpośrednie przesyłanie

17

Testowanie: RSpec (describe, context, it), FactoryBot, fixtures, testy request, testy systemowe

18

Concerns: ActiveSupport::Concern, ponowne użycie kodu, kompozycja modułów

19

Silniki Rails: montowalny silnik, przestrzenie nazw, rozwój gemów

20

Wydajność: cache fragmentów, Russian doll caching, optymalizacja zapytań, gem bullet

21

Bezpieczeństwo: ochrona CSRF, zapobieganie SQL injection, ochrona masowego przypisywania (strong params)

22

Wdrażanie: Capistrano, Heroku, Docker, serwery Puma/Unicorn, pipeline zasobów