Ruby (linguagem de programação)
Ruby
Ruby é uma linguagem de programação interpretada, com tipagem dinâmica e forte, orientada a objetos com vastas semelhanças com Perl, SmallTalk e Python.
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.
Ruby é bastante usada no mundo todo, com uma lista de discussão bastante ativa (ruby-talk). Possui vastos repositórios de módulos hospedados nos sites Ruby Application Archive (RAA) e Rubyforge. Existe, ainda, uma ferramenta bastante útil para instalação de bibliotecas, chamada Ruby Gems.
Ruby se tornou reconhecida no meio especializado desde que Dave Thomas, conhecido como um dos Pragmatic Programmers (Programadores Pragmáticos), adotou o Ruby como uma de suas linguagens preferidas, e acabou por escrever a bíblia da linguagem, o Programming Ruby, The Pragmatic Programmer’s Guide. De lá pra cá, o número de adeptos do Ruby tem crescido vertiginosamente. Ultimamente, devido à grande exposição de um framework web feito em Ruby, o Ruby on Rails, a linguagem têm sido alvo de grandes elogios e grandes críticas, justamente pela sua praticidade.
A praticidade, inclusive, é um dos conceitos básicos desta linguagem. Você deve fazer códigos que resolvam seus problemas, e não os problemas da linguagem e/ou interpretador/compilador.
Para manter a praticidade, a linguagem possui algumas características interessantes:
- A sintaxe é enxuta, quase não havendo necessidade de colchetes e outros caracteres que dificultam a leitura.
- Orientação a Objetos pura (tudo são objetos, até mesmo os tipos mais básicos de variáveis)
- Foram criados atalhos de código, como os “attr”, “attr_reader” e “attr_writer”.
- Para instalar uma biblioteca nova, basta digitar “gem install biblioteca” na linha de comando do seu sistema operacional.
- “Code blocks”, ou blocos de código, ajudam o programador a passar um trecho de instruções para um método. A idéia é semelhante aos “callbacks” do Java, mas de uma forma extremamente simples e bem implementada.
- “Mixin’s”, uma forma de emular a Herança Múltipla, sem cair nos seus problemas.
- Tipagem dinâmica, mas forte. Isso significa que todas as variáveis devem ter um tipo (fazer parte de uma classe), mas a classe pode ser alterada dinamicamente. Os “atalhos” citados acima, por exemplo, se beneficiam da tipagem dinâmica para criar os métodos de acesso/alteração das propriedades.
Ruby está disponível para diversas plataformas, como Windows, .NET, Linux, Solaris, Java (JRuby) e Mac OS X.
Fonte: wikipedia.org