Nesta aula iremos aprender como criar variáveis, quais os tipos de variáveis e quais os tipos de dados que utilizamos em Ruby.

Variáveis e Data Types

No Ruby temos esses tipos principais(Data Types):


Tipos de Numbers
Classe Descrição Exemplo
Fixnum Integer Numeros "normais" 1
Bignum Integer Numeros grandes 999999999999
Float Numeros Decimais 7.0
Complex Numeros Imaginários 4 + 3i
Rational Frações 9/4
BigDecimal Números decimais de alta precisão 0.99999999999

Observação sobre aspas:
Com aspas duplas ", você pode concatenar usando #{}, já com aspas simples terá que usar sinal de +.

Acesso o irb para testar alguns códigos

Exemplo no Ruby: 2.7
      
        # Tudo é um objeto.
        > 1.class
        => Integer
      
    
Conversão de tipo - Casting

No Ruby temos acesso a métodos específicos de conversão, por exemplo: Dada variável a, para converter para um inteiro, basta fazer

        
        # Converte para inteiro
        a.to_i
        
        # Converte para string
        a.to_s
        
      

Tipos de variáveis váriaveis
           xis = 1 # variável simples.   
           @xis = 1 # é uma variável de instância.   
           @@xis = 1 # é uma variável de classe.   
           $Xis = 1  # é uma variável global.  
        
Observação do Professor:

No Ruby a Orientação a Objetos é um conceito essencial para o entendimento da linguagem, você pode estudar mais O.O. através dos outros vídeos do canal, como os de C#.

No irb você pode testar o método .methods, que retorna todos métodos disponiveis para aquela classe.

       > BasicObject.methods
    

Observe que nas versões mais novas do Ruby, 2.5 ou 2.7 você receberá um retorno diferente no 1.class, na aula o professor usa o Ruby 2.3.3, onde retornava Fixnum, nas versões mais novas ouve uma mudança para o Integer como tipo numérico básico. Com o .superclass você consegue ver a classe pai daquela classe.

Você pode configurar o seu RVM como 2.3.3 no .rvmrc para acompanhar as aulas como foi ensinado nas aulas passadas.

Agora criaremos um arquivo aula.rb, lembrando de criar o arquivo Gemfile com o source 'https://rubygems.org' e gem 'byebug'

      
        require 'byebug'
        debugger

        h = {}
        puts "string".class
        puts 1.class
        puts 1.class.superclass
        puts 1.class.superclass.superclass
        puts 4.3.class
        puts 4.3.class.superclass
        puts nil.class
        puts h.class
        puts :symbol.class
        puts [].class
        puts (1..8).class
      
    

Você pode rodar usando ruby aula.rb, com o byebug a tecla n, avança para a próxima linha.

Lembrando da questão da tipagem, você não podera trabalhar uma variável string em determinadas operações com um inteiro sem fazer o casting(conversão de tipo),

Exemplos de variáveis
  
    require 'byebug'
    debugger

    a = 1 # é uma variável local.
    puts a

    @a = 2 # é uma variável de instância.
    puts @a
  
    @@a = 3 # é uma variável de classe.
    puts @@a

    $a = 4  # é uma variável global.
    puts @a

    A = 5 # Uma constante.
    puts A
  

Exemplo variável de instância

  
    require 'byebug'
    debugger

    @a = 1
    def teste
      puts @a
    end

    teste

  

Exemplo de variável de classe fora da classe, executa mas exibe um aviso.

  
    require 'byebug'
    @@a = 1 # Maneira errada de fazer
    class Teste
      @@a = 4
      def a
        puts @@a
      end
    end
    puts Teste.new.a

  

Mais exemplos

  
    require 'byebug'
    
    # Maneiras corretas de fazer
    $a = 2  
    A = 3
    
    class Teste
      def initianlize
      # variável de instância
        @a = 4
      end
      # variável de classe
      @@a = 4

      # Aqui você pode acessar uma variálvel global ou uma constante
      def a
        # constante
        A
        # variável global
        $a
      end
    end

    puts Teste.new.a
  



Próximas Aulas


Condicionais

Nesta aula iremos aprender os condicionais do Ruby, (if, else, elsif, than, case, when, unless, tern...

Tratamento de Strings

Nesta aula iremos aprender os tipos de tratamentos de string utilizados na linguagem Ruby, você irá ...

Operadores lógicos

Nesta aula você ira aprender os operadores lógicos básicos do Ruby, irá ver onde aplicar e como util...

Looping

Nesta aula iremos ver comandos como each, times, until, while, que são comandos utilizados para exec...

Hash

Nesta aula iremos aprender um objeto muito importante para programadores ruby. O Hash te ajuda a map...

Funções

Nesta aula iremos aprender como criar e estruturar uma função em ruby, veremos como retornar e passa...

Funções recursivas

Nesta aula iremos aprender um pouco mais sobre funções, iremos ver mais uma forma de utilizar a funç...

Orientação a objetos - instância e construtor

Nesta aula iremos aprender o como criar uma classe, uma instância e a utilização de construtores em ...



Danilo

Arquiteto de software, analista, programador, professor. Danilo criou o projeto torne-se um programador, para passar o seu conhecimento para a nova geração. Com o intuito de ser um bom pai, Danilo trabalha muito motivado para garantir o futuro de sua filha.

ELEVE SEUS GANHOS E POTENCIALIZE SUA PERFORMANCE

Receba nossa Ebook de LÓGICA DE PROGRAMAÇÃO

© Didox Business & Technology - CNPJ: 12.127.195/0001-14