Trilha Júnior Trilha

Idiomas Ruby: memoização

Este curso trata do operador ||= do Ruby e de como ele sustenta a memoização. Começa pela expansão de x ||= value em x || (x = value) e explica por que isso funciona numa variável nunca atribuída. Depois separa os valores padrão em partials e helpers Rails do cache de um resultado num objeto. Contadores de chamada mostram a memoização rodando um passo caro uma vez. Em seguida, o curso mostra por que o ||= não memoiza false nem nil e corrige isso com defined?. No fim, aponta os casos em que memoizar traz complexidade ou dado velho.

O que você vai aprender

  • ✓Como x ||= value se expande em x || (x = value) e funciona em variáveis não atribuídas
  • ✓A diferença entre ||= para valores padrão e memoização
  • ✓Guardar um resultado caro numa variável de instância com @ivar ||=
  • ✓Por que @value ||= false recalcula a cada chamada
  • ✓Usar defined?(@ivar) para memoizar valores que podem ser false ou nil
  • ✓Quando a memoização não compensa e como valores em cache ficam velhos
Prévia grátis · Aula 1 3 min de leitura

O que ||= faz

||= parece uma sintaxe própria, mas junta duas coisas de cursos anteriores: || (OU com curto-circuito) e = (atribuição). x ||= 5 funciona assim:

Ler a aula completa grátis →

Currículo

7 aulas
Digite para buscar...