image

Bootcamps ilimitados + curso de inglés para sempre

80
%OFF
Article image
Wagner Braga
Wagner Braga21/04/2025 21:51
Compartir

This is the way: Da Verbosidade ao Prazer de Programar com Ruby

  • #Java
  • #Ruby
  • #C#

Como Me Apaixonei Por Ruby:

Durante a faculdade, como muitos a maioria, aprendi a programar com com Java e C#. Ambas são poderosas, amplamente usadas no mercado e excelentes para aprender os fundamentos da programação orientada a objetos. No entanto, havia algo nelas que nunca me pareceu natural: a verbosidade.

Sempre que precisava escrever algo simples, me via cercado de public static void, Main, class, interface, using System e outras estruturas que pareciam mais burocracia do que código. Era como se para pedir um café, eu tivesse que preencher um formulário em três vias.

Mas tudo mudou no dia em que conheci Ruby.

A Primeira Impressão: Isso é código?

A primeira vez que li um código Ruby, achei que estava lendo inglês. Algo como:

5.times do
 print "Hello, world!"
end

"Como assim? Cadê o for? Cadê o tipo da variável? Cadê a estrutura toda que me disseram que era essencial pra programar?" – pensei.

Foi amor à primeira vista.

Ruby Fala a Língua da Gente

Ruby é uma linguagem projetada para que o programador se sinta bem escrevendo código. Ao contrário de Java e C#, que foram pensadas para máquinas e grandes times, Ruby parece ter sido criada com carinho, como uma carta para quem ama programar.

Aqui vão alguns exemplos que me marcaram e mostram como Ruby é mais idiomático – e até mais bonito – do que suas contrapartes:

1. Dizer algo X repetir três vezes

Java:

for (int i = 0; i < 3; i++) {
  System.out.println("Oi");
}

C#:

for (int i = 0; i < 3; i++) {
  Console.WriteLine("Oi");
}

Ruby:

3.times { puts "Oi" }

Simples, direto, quase como falar com o código.

2. Checar se algo está vazio

Java:

if (myList != null && !myList.isEmpty()) {
  // faz algo
}

C#

if (myList != null && myList.Count > 0) {
  // faz algo
}

Ruby:

unless my_list.empty?
# faz algo
end

Ou, se quiser ser ainda mais direto:

do_something if my_list.any?

3. Manipular coleções com clareza

Java (antes do Java 8):

List<String> upper = new ArrayList<>();
for (String name : names) {
upper.add(name.toUpperCase());
}

Ruby:

upper = names.map(&:upcase)

Mais curto, mais expressivo, e ainda assim legível.

Ruby é Menos Máquina, Mais Humano

O que me encantou em Ruby foi perceber que dava para pensar como um humano e escrever como um humano. E ainda assim ter um código claro, limpo e funcional. Não é só sobre escrever menos – é sobre escrever melhor.

Imagina ser un iniciante e poder entender esses conceitos atraves da simples leitura do código!!!

Quando entramos em POO a coisa fica ainda mais "delicinha"

Suponhamos a classe

class Pessoa
end

Sim, é só isso. Me e se eu quiser atributos que eu possa attribuir valores ou recuperar valores?

class Pessoa
  attr_accessor :nome, :sobrenome, :idade
end

Prontinho. Não precisa aqueles montões de "getter" e "setter". Se eu quiser dar um valor para um atributo de uma instancia de pessoa basta...

pessoa = Pessoa.new
pessoa.nome = 'Jão'

E se eu quiser recuperar:

puts "Olá! meu nome é #{pessoa.nome}" #=> "Olá! meu nome é Jão"

Fantasticamente simple e, você deve ter notado: sem ponto e vírgula, uso de parenteses é opcional e a concatenação é simplificada.

Eu podería ficar aqui horas e horas escrevendo eu aconselho você a tentar usar o GPT para pegar algum exercício da faculdade e perguntar para ele como ficaria no jeito ruby de programar.

Conclusão

Ruby me mostrou que programar não precisa ser penoso. Não precisa ser burocrático. Programar pode ser agradável, até divertido. E isso, pra mim, fez toda a diferença.

Se você, como eu, já se perguntou se programar precisava mesmo ser tão cheio de formalidades... talvez Ruby seja a resposta.

Compartir
Recomendado para ti
Randstad - Backend com .NET
Deal - Spring Boot e Angular (17+)
XP Inc. - Full Stack Developer
Comentarios (1)
Maryane Soares
Maryane Soares - 21/04/2025 22:38

Muito bom, pretendo estuda-la