Smpre tive curiosidade em aprender a programar nessa linguagem. Já tinha ouvido falar e até visto alguns códigos por aí. O que me impedia de aprender? Programação Orientada a Objetos (POO). Cheguei a ver na graduação, mas não consegui assimilar o conhecimento. Foi aí que descobri o Gustavo Guanabara e o seu canal, o Curso em Vídeo. A partir disso, criei coragem e decidi aprendê-la.
Ruby?
De acordo com a Wikipédia:
Ruby é uma linguagem de programação interpretada multiparadigma, de tipagem dinâmica e forte, com gerenciamento de memória automático, originalmente planejada e desenvolvida no Japão em 1995, por Yukihiro “Matz” Matsumoto, para ser usada como linguagem de script.
Wikipédia
É uma linguagem de sintaxe simples e bastante intuitiva, poderosa em todos os sentidos. Se quiser criar aplicações web, conheça o framework Rails. O que era bom, fica melhor ainda!
Onde vi o Ruby pela primeira vez?
Lá por volta dos anos 2000 conheci um cara que estava por dentro do que acontecia no mundo Ruby. Seu nome é Eustáquio Rangel (TaQ). Na época, ele estava criando um tutorial de Ruby, que, logo virou um livro, e eu só era interessado em Shell Script, por não entender o conceito de Orientação a Objetos. Isso me afastou de diversas linguagens (menos o Java, esse eu não gosto MESMO), mas desde então mantive o desejo de aprender a linguagem.
O que estou fazendo para aprender Ruby?
Depois de aprender tudo que era necessário para utilizar Ruby nos meus projetos, comecei a portar alguns que havia feito em Shell Script para a nova linguagem. Os primeiros códigos eram quase que cópias exatas das estruturas Shell. E mesmo nesse momento já deu para perceber o quão poderosa (e simples) é a linguagem Ruby. O que eu faria com algumas linhas em Shell Script era feito em uma ÚNICA LINHA DE RUBY! Duvida? Eis um exemplo:
#!/usr/bin/env bash
for i in "1 2 3 4 5"; do
echo "Número ${i}"
done
#!/usr/bin/env ruby
5.times { |i| puts "Número #{i+1}" } # necessário para começar a contagem em 1
É claro que utilizei um comando básico. Mas já dá para notar a diferença na clareza da sintaxe do Ruby. Se você quer mostrar algo na tela, utilizando if, ficaria dessa forma:
#!/usr/bin/env bash
nome="p0ng"
if [[ ! -z "${nome}" ]]; then
echo "Meu nome é ${nome}"
fi
Em Ruby:
#!/usr/bin/env ruby
nome="p0ng"
puts nome unless nome.nil?
O que a linha acima diz é o seguinte: imprima na tela (puts)
o valor da variável nome (nome)
, a não ser que seja nula (unless nome.nil?)
. Para quem tem conhecimento na lingua inglesa, é como se estivesse escrevendo um texto de forma natural.
Meus projetos em Ruby
Com tudo isso, comecei a criar projetos para praticar. Alguns deles coloquei no GitHub. e inseri os links em uma nova seção do site: Meus projetos.
O futuro?
Estou fortemente inclinado a criar cada vez mais projetos em Ruby e cada vez menos projetos em Shell Script (mas não deixarei de criar coisas nessa linguagem).
🙂