Aprenda
Início do módulo

Ruby on Rails

Do Ruby essencial até scaffold, Devise, serializer e service object numa API REST.

20 lições340 min no total0% concluído
Começar trilha →

Fundamentos

O suficiente pra usar na prática sem se machucar.

10 lições · 174 min
  1. 1Ruby essencialSó o suficiente de sintaxe Ruby pra ler Rails com confiança — não é um curso de Ruby inteiro.18 min
  2. 2O que é Rails: gems, Gemfile e convenção sobre configuraçãoComo um projeto Rails nasce (gem install, rails new, Gemfile) — e por que Rails decide tanta coisa por você.16 min
  3. 3Scaffold: gerando um recurso e entendendo cada arquivoUm comando gera model, migration, controller e rotas — entender o que cada arquivo faz é o objetivo.16 min
  4. 4Models e migrationsMigration muda o schema do banco de forma versionada; model é onde validação e associação moram.18 min
  5. 5Controllers e rotas RESTresources gera 7 rotas de uma vez — entender as 7 evita reinventar rota fora do padrão REST.16 min
  6. 6Serializersrender json: @model devolve TODAS as colunas — serializer decide exatamente o que sai.14 min
  7. 7Service objectsQuando uma ação envolve mais de um model, ela não pertence nem ao controller nem a um model só.16 min
  8. 8Autenticação com DeviseDevise resolve senha/sessão/token — entender o que ele gera é melhor do que tratá-lo como caixa-preta.18 min
  9. 9Autorização (CanCanCan) e RBACAutenticação prova quem você é; autorização decide o que você pode fazer — são coisas diferentes.16 min
  10. 10Projeto guiado: API REST completaUm recurso Pedido do scaffold ao endpoint autenticado, autorizado e serializado — as 9 lições juntas.26 min

Intermediário

O que fundamentos deixou em aberto — produção, performance, casos reais.

10 lições · 166 min
  1. 1Concerns e composiçãoHerança força uma hierarquia rígida — concern deixa você compartilhar comportamento entre models sem isso, desde que não vire uma gaveta de bagunça.15 min
  2. 2Arquitetura de controllers de produçãobefore_action e strong params fazem mais do que economizar linha — usados com disciplina, são o que separa um controller magro de um fat controller disfarçado.16 min
  3. 3Serializers avançadosAssociação aninhada, atributo condicional por contexto e N+1 escondido dentro de um serializer — o que a lição básica deixou de fora.16 min
  4. 4Paginação e filtros de APIDevolver a tabela inteira numa resposta funciona até ela ter volume real — paginação e filtro seguro resolvem isso antes que vire incidente.15 min
  5. 5Envelope de resposta e tratamento de errosCada endpoint devolvendo um formato de erro diferente obriga o front a tratar cada um na mão — um envelope padronizado e um rescue_from central resolvem isso de uma vez.16 min
  6. 6Service Result: aprofundando service objectsLevantar exception pra 'e-mail já cadastrado' trata um resultado esperado do negócio como se fosse um bug — um objeto de resultado resolve isso.15 min
  7. 7Background jobs com Solid QueueSe a resposta HTTP só pode voltar depois que um e-mail terminar de ser enviado, o usuário está esperando por algo que não devia bloquear a requisição.14 min
  8. 8Segurança de API: CORS, força bruta e BrakemanAutenticação e autorização resolvem quem é o usuário e o que ele pode fazer — mas não impedem um atacante de tentar mil senhas por minuto, nem avisam sobre um SQL cru esquecido no código.17 min
  9. 9Testes em Rails: RSpec essencialUm controller spec testa o controller isolado, sem passar pela rota de verdade; um request spec testa o que o cliente da API realmente recebe.16 min
  10. 10Projeto guiado: evoluindo a API de PedidosA mesma API de Pedidos da lição de fundamentos ganha paginação, envelope de resposta, job assíncrono e teste de request — fechando fundamentos e intermediário juntos.26 min