Lógica Ruby
O curso trata da lógica condicional em Ruby. Começa pelo bloco completo if, elsif e else e mostra que todo if é uma expressão com valor próprio. Depois vem o unless e o motivo de evitar combiná-lo com else. Em seguida aparecem os operadores &&, || e !, a avaliação de curto-circuito e a armadilha de precedência das versões em palavra and e or. O case com when entra como alternativa a cadeias longas de elsif. O curso fecha com um pequeno desafio de controle de acesso.
O que você vai aprender
- ✓Escrever blocos if, elsif e else e usá-los como expressões
- ✓Usar unless como guard clause e evitar unless com else
- ✓Combinar condições com &&, || e !
- ✓Como a avaliação de curto-circuito faz a ordem das condições importar
- ✓Por que and e or têm precedência menor que &&, || e a atribuição
- ✓Conferir um valor contra faixas, classes e listas com case e when
if, elsif, else: a forma completa
O if como modificador no fim da linha apareceu em Ruby: felicidade do dev. Métodos Ruby usou blocos if/elsif/else completos em classify e check_age sem dar nome ao formato. Este curso o cobre por inteiro: condicionais, &&, || e as checagens padrão de que todo programa Ruby depende.
Ler a aula completa grátis →Currículo
7 aulasif, elsif, else: a forma completa
O bloco completo if, elsif e else, conferido de cima para baixo, e por que todo if devolve valor.
unless: o inverso direto do if
A forma de bloco do unless, seu uso como guard clause e por que o RuboCop desaconselha juntá-lo com else.
Combinando condições: &&, || e !
Como &&, || e ! montam condições compostas, com parênteses agrupando as partes como na aritmética.
Avaliação de curto-circuito: por que ordem importa
O Ruby para de avaliar quando o resultado já é certo, o que torna seguro o padrão user && user.name.
and / or: as versões em palavra, e por que são diferentes
Os operadores and, or e not ficam abaixo da atribuição, então x = false or true deixa x como false.
case / when: uma alternativa mais limpa
Como usar case e when para conferir um valor contra faixas, classes ou listas separadas por vírgula.
Juntando tudo: um pequeno desafio
Um método de controle de acesso que junta guard clause, curto-circuito e case, seguido de um exercício para escrevê-lo.