Hashes em Ruby

Post muito bom do blog Softies on Rails sobre hashes no Ruby : http://www.softiesonrails.com/2007/8/27/ruby-101-hashes-are-cool

Hash é uma das estruturas de dados mais utilizadas pelo Rails. O suporte a hashes no Ruby é muito bom, tornando a manipulação de Hashes altamente clara e eficiente.

Uma boa “sacada” do Rails foi utilizar hashes como parâmetros em diversos métodos. Dessa forma, à medida que novas versões do framework são lançadas, não é preciso alterar o código de aplicações antigas devido à mudança na assinatura de métodos, basta mudar o conteúdo de um hash passado como parâmetro para utilizar uma nova função.

CodeKata dois - Pesquisa binária

Há algum tempo falei do blog CodeKata, que contém exercícios para praticar programação. O primeiro exercício não é prático, então não fiz um post sobre ele, embora seja bem interessante. Já o segundo exercício pede que sejam escritos alguns algoritmos para pesquisa binária em um vetor.

Consegui desenvolver o algoritmo iterativo em Ruby, o próximo passo (quando houver tempo hábil) é desenvolver uma versão recursiva.

Veja o código abaixo:
Read more

Aprendizado orientado a testes

Você provavelmente já ouviu falar de Test-Driven Development (desenvolvimento orientado a testes) e provavelmente até utiliza esse método. Se não utiliza, deveria começar a pensar seriamente nisso.

Recentemente, passeando por alguns blogs, encontei um post falando sobre aprendizando orientado a testes. Neste caso, aprendizado de Ruby utilizando o framework para testes unitários incluso na linguagem (leia sobre o framework aqui e aqui). Veja o post e sua sequência.

Essa abordagem é bastante interessante pois estimula o aprendizado através da experimentação e da descoberta. Os testes unitários são uma excelente forma de descobrir como algo funciona em uma linguagem. É claro que a documentação é importante (e a documentação do Ruby é muito boa: simples, direta e completa), mas todos sabemos que a melhor documentação é o código-fonte, aquele que gira as engrenagens e faz com que tudo funcione (ou não…).

Read more

Links sobre Ruby

Cinco dicas para Ruby: http://www.igvita.com/blog/2007/05/08/5-ways-to-sharpen-your-ruby-foo/

Um pouco sobre substrings em Ruby: http://www.softiesonrails.com/2007/8/19/ruby-101-substrings-in-ruby

Documentação do Ruby - ri

Juntamente com o Ruby, é instalado o utilitário ri, através do qual é possível acessar a documentação do Ruby (e também documentação gerada a partir do utilitário RDoc, que não é nosso foco no momento).

Para utilizar o ri basta digitar “ri” (sem as aspas) em um prompt de comando, seja no Windows, Mac OS ou Linux (desde que o Ruby esteja corretamente instalado).

Digitando apenas ri e teclando Enter, você verá algumas orientações sobre o uso do utilitário, os comandos e opções disponíveis e também alguns exemplos.

Exemplo (em Windows):

C:> ri Array#each
 -------------------------------------------------- Array#each
 array.each {|item| block }   ->   array
 -------------------------------------------------------------
 Calls _block_ once for each element in _self_,
 passing that elementas a parameter.

 a = [ "a", "b", "c" ]
 a.each {|x| print x, ” — ” }

 produces:
 a — b — c –

Para quem utiliza o Windows, existe também o utilitário gráfico fxri que disponibiliza um misto de ri e irb, o console Ruby interativo, através do qual você pode digitar comandos Ruby e receber os resultados instantâneamente (assim como no site http://tryruby.hobix.com/).

Observação 1: como utilizo apenas ambiente Windows, não tenho conhecimento da disponibilidade de utilitários semelhantes nas outras plataformas.

Observação 2: o fxri, entre outros utilitários, é instalado pelo One-Click Ruby Installer, a maneira mais fácil de instalar um ambiente Ruby em Windows.

Esses utilitários são extremamente úteis tanto para aprendizado quanto durante o desenvolvimento, mantenha-os sempre à mão!

CodeKata - seja um desenvolvedor melhor

Kata: no karatê e em outras artes marciais, Kata é uma sequência de exercícios pré-determinados que devem ser executados com bastante concetração e harmonia, ajudando o praticante a conhecer e controlar melhor o seu corpo.

CodeKata: sequência de exercícios de programação, desenvolvidas por Dave Thomas, visando criar entre os desenvolvedores de software o hábito da prática constante (bem diferente do costume desse nicho: encher os desenvolvedores de teoria e então lançá-los ao mercado).

Os exercícios podem ser resolvidos com qualquer linguagem de programação, mas para quem está aprendendo Ruby, esses exercícios são uma excelente forma de praticar o código enxuto e fácil de ler dessa linguagem dinâmica.

Primeiros passos com Ruby

Ok, após quase um mês lendo livros, tutoriais e artigos sobre Ruby, vou colocar aqui algumas coisas sobre a linguagem.

Em primeiro lugar, instalando Ruby e o framework Rails para uso posterior.

Para instalar no Windows, siga o tutorial de Rafael Cavalcanti: http://rafaelcavalcanti.com/blog/2007/06/14/instalando-ruby-on-rails-no-windows/

Para Mac, o Locomotive é uma boa opção: http://locomotive.raaum.org/

Leia o restante do post clicando no link abaixo.

Read more

Maratona de palestras no Treina TOM

A e-Genial promoverá, no próximo dia 18, uma maratona de palestras na sua plataforma de treinamentos on-line, o Treina TOM. Há palestras sobre Ruby, Rails, XP, Flex e outros assuntos interessantes, vale muito a pena conferir. Também é possível baixar palestras anteriores e verificar a agenda de eventos. Confiram.

Ruby

Ruby logo

É muito comum ver, em fóruns e listas, perguntas do tipo: “Como aprender Ruby on Rails?”, “Por onde começar?”, etc…

Acredito que o primeiro passo para aprender Ruby on Rails é adquirir conhecimento sólido da linguagem Ruby. Você pode até conseguir desenvolver aplicações web com Rails sem conhecer muito do Ruby, mas garanto que, conhecendo a linguagem, suas aplicações terão muito mais qualidade.

Recursos para aprender Ruby:

Fica a dica: aprenda Ruby! Ok, não precisa ser um gênio em Ruby, mas esforce-se para aprender os conceitos dessa linguagem, pois seus paradigmas são significantemente diferentes das linguagens mais populares, como C#, Java ou Basic (na minha opinião, Ruby é muito melhor para o programador pois é mais ágil e natural).

Iniciando

Bem-vindo!

O intuito inicial desse blog é simples: mostrar meu caminho de aprendizado do Ruby on Rails e, ao mesmo tempo, ajudar aos iniciantes nesse framework.

Após consolidar meus conhecimentos, espero contribuir com a comunidade Rails do Brasil e de todo o mundo.

Ao trabalho!