Ruby é uma linguagem de programação dinâmica, interpretada e orientada a objetos, criada por Yukihiro Matsumoto, também conhecido como Matz, no Japão, em meados da década de 1990. Ela foi projetada para ser simples, flexível e produtiva, com uma sintaxe elegante e expressiva que favorece a legibilidade e a produtividade de quem desenvolve.
Ruby é frequentemente associado ao desenvolvimento web, principalmente por causa do popular framework Ruby on Rails. No entanto, a linguagem também é usada em automação de tarefas, criação de scripts, desenvolvimento de jogos e muitas outras áreas.
Principais características do Ruby
Programação orientada a objetos
Tudo em Ruby é um objeto, incluindo números, strings, classes e métodos.
A linguagem segue o paradigma orientado a objetos e oferece recursos como herança, polimorfismo e encapsulamento.
Sintaxe limpa e expressiva
Ruby possui uma sintaxe simples e legível, inspirada em linguagens como Perl e Smalltalk.
Seu código costuma ser descrito como “bonito” e “elegante”.
Metaprogramação
Ruby é conhecido por seus recursos poderosos de metaprogramação, que permitem que programas modifiquem e adaptem seu próprio comportamento em tempo de execução.
Blocos e iteradores
A linguagem oferece blocos e iteradores, facilitando a criação de código conciso e expressivo, especialmente ao trabalhar com coleções de dados.
Programação funcional
Embora seja orientado a objetos, Ruby também oferece conceitos de programação funcional, como funções de primeira classe e métodos de ordem superior.
Comunidade ativa e ecossistema de gems
Ruby possui uma comunidade ativa e um grande conjunto de bibliotecas e frameworks para diferentes tipos de aplicação.
Exemplo de código
ola.rb
1# Exemplo de uma classe em Ruby
2class Pessoa
3 attr_accessor :nome
4
5 def initialize(nome)
6 @nome = nome
7 end
8
9 def saudacao
10 "Olá, meu nome é #{@nome}."
11 end
12end
13
14# Cria uma instância da classe Pessoa
15pessoa = Pessoa.new("João")
16
17# Chama o método de saudação
18puts pessoa.saudacao # Saída: Olá, meu nome é João.
Neste exemplo, criamos uma classe Pessoa com um método saudacao, que retorna uma mensagem contendo o nome da pessoa. Depois, instanciamos a classe e chamamos o método para exibir a saudação.
Trabalhando com tipos primitivos
Em Ruby, você pode descobrir a classe de qualquer objeto usando o método .class:
tipos.rb
142.class # Retorna Integer
2"olá".class # Retorna String
33.14.class # Retorna Float
4true.class # Retorna TrueClass
Também é possível descobrir os ancestrais, ou seja, a cadeia de herança de uma classe, usando o método .ancestors.