Variáveis e atribuição
O curso trata de variáveis e atribuição em Ruby. Começa pelo que é uma variável: um nome ligado a um valor, criado por atribuição, sem palavra-chave nem tipo declarado. Depois vêm as regras de nome das variáveis locais, a convenção snake_case e a diferença entre = para atribuir e == para comparar. As aulas seguintes explicam o escopo local dentro de métodos, as variáveis de instância escritas com @ e por que uma local indefinida gera NameError, enquanto uma variável de instância não definida devolve nil. No fim, uma classe BankAccount junta os dois tipos.
O que você vai aprender
- ✓O que é uma variável e como a reatribuição muda o valor dela
- ✓Regras de nome para variáveis locais e a convenção snake_case
- ✓A diferença entre = para atribuir e == para comparar
- ✓Escopo local em métodos, com parâmetros e valores de retorno cruzando a fronteira
- ✓Variáveis de instância com @ e como elas persistem em cada objeto
- ✓O comportamento de locais indefinidas e de variáveis de instância não definidas, e o uso de nil?
O que uma variável realmente é
O curso passado foi só mentalidade, sem código para rodar. Este muda isso. Variáveis são a primeira sintaxe concreta de Ruby desta série, e tudo depois se apoia nelas.
Ler a aula completa grátis →Currículo
7 aulasO que uma variável realmente é
Uma variável é um nome ligado a um valor, criado por atribuição sem palavra-chave nem tipo declarado.
Variáveis locais: nomenclatura e snake case
Nomes de variáveis locais começam com minúscula ou sublinhado, e a convenção do Ruby é snake_case descritivo.
Atribuição não é igualdade: = vs ==
O = atribui um valor e o == compara, devolvendo true ou false; a aula inclui atribuição encadeada.
Escopo local: onde uma variável mora e morre
Cada método cria o próprio escopo local, e valores só o cruzam por parâmetros e valores de retorno.
Variáveis de instância: @
Variáveis de instância escritas com @ pertencem a um objeto, persistem entre chamadas de método e são próprias de cada objeto.
nil e variáveis indefinidas
Uma variável local indefinida gera NameError, e uma variável de instância não definida devolve nil, conferível com nil?.
Juntando tudo: rastreando estado com variáveis locais e de instância
Uma pequena classe BankAccount combina variáveis locais e de instância para acompanhar um saldo entre chamadas de método.