Ruby
PARADIGMAS DE LINGUAGEM
RUBY
INTRODUÇÀO
Ruby é uma Linguagem de programação interpretada, com tipagem dinâmica e forte, orientada a objetos e, com várias semelhanças com Perl, Python e SmallTalk.
Projetada tanto para a programação em grande escala quanto para codificação rápida, tem um suporte a orientação a objetos simples e prático. A linguagem foi criada pelo japonês Yukihiro Matsumoto, que aproveitou as melhores idéias das outras linguagens da época.
Esta linguagem possui vastos repositórios de bibliotecas disponíveis em sites como Ruby Forge e Ruby Application Archive (RAA). Existe, ainda, uma ferramenta bastante útil para instalação de bibliotecas, chamada Ruby Gems, o …exibir mais conteúdo…
O Ruby é também totalmente livre. Não somente livre de custos, mas também livre para utilizar, copiar, modificar e distribuir.
COMANDOS BÁSICOS
Os Blocos do Ruby são vistos como uma fonte de grande flexibilidade. Um programador pode adicionar um fecho a qualquer método, descrevendo como esse método se deve comportar. O fecho é chamado bloco e tornou-se uma das características mais populares para os recém chegados ao Ruby vindos de outras linguagens imperativas como o PHP ou o Visual Basic.
Os Blocos são inspirados nas linguagens funcionais. O Matz disse, “nos fechos em Ruby, Eu quis respeitar a cultura do Lisp4”
search_engines = %w[Google Yahoo MSN].map do |engine| "http://www." + engine.downcase + ".com" End
No código acima, o bloco é descrito dentro do trecho do ... end. O método map aplica o bloco à lista de palavras fornecida. Existem muitos outros métodos em Ruby que deixam em aberto a possibilidade para o programador escrever o seu próprio bloco que complete os detalhes do que esse método deveria fazer. De forma diferente a muitas linguagens de programação orientadas aos objectos, o Ruby suporta somente herança simples, propositadamente. Mas em Ruby existe o conceito de módulos (chamados categorias em Objective-C). Os módulos são colecções de métodos. As Classes podem ‘mixin’ um modulo e receber todos os métodos do módulo directamente. Por exemplo,