Identificadores de objetos e símbolos em Ruby
Identificadores de objetos: Link to heading
Em Ruby, cada variável declarada possui um identificador exclusivo (object_id) que se refere ao objeto que ela contém. Mesmo que duas variáveis tenham o mesmo conteúdo, seus identificadores serão diferentes.
Exemplo: Link to heading
texto = "Olá"
texto_2 = "Olá"
texto.object_id # => 1234567890
texto_2.object_id # => 9876543210
# Embora o conteúdo seja o mesmo, os IDs são diferentes
Símbolos: Link to heading
símbolos são valores que não mudam ao longo do código. Eles são usados para representar nomes de métodos, variáveis e outras entidades que não precisam ser modificadas.
Exemplo:
cor = :red
cor_2 = :red
cor.object_id # => 1234567890
cor_2.object_id # => 1234567890
# Variáveis com o mesmo símbolo compartilham o mesmo ID
Os símbolos têm as mesmas propriedades das variáveis normais: Link to heading
- Eles podem ser usados como chaves em hashes.
- Eles podem ser usados como argumentos de métodos.
- Eles podem ser comparados com outros símbolos.
Converta um símbolo em uma string: Link to heading
:escarlate.class # => Symbol
:escarlate.to_s # => "escarlate"
Vantagens de usar símbolos: Link to heading
- Eles são mais eficientes em termos de memória do que strings.
- São mais rápidos de comparar do que as cadeias.
- São mais fáceis de ler e entender do que strings.
Quando usar símbolos: Link to heading
- Para nomes de métodos, variáveis e outras entidades que não mudam.
- Como chaves em hashes.
- Como argumentos para métodos que esperam um nome de símbolo.
Em resumo: Link to heading
- Os identificadores de objetos são únicos para cada variável, mesmo que tenham o mesmo conteúdo.
- Símbolos são valores imutáveis usados para representar nomes de métodos, variáveis e outras entidades.
- Os símbolos são mais eficientes em termos de memória, mais rápidos de comparar e mais fáceis de ler do que strings.
Continue aprendendo sobre identificadores de objetos e símbolos para aproveitar ao máximo o Ruby!