16/12/2009 9 Comentários

Diego Roriz - diegororiz - Rails, Tecnologia e Desenvolvimento

Porque utilizar ruby?

Porque utilizar ruby?

0 votos Vota!!


Ruby é uma linguagem interpretada, dinâmica e open source com foco na simplicidade e produtividade. Como vocês poderão observar, é uma linguagem que possui uma sintaxe elegante e que é simples de compreender e fácil de codificar. O seu criador, Yukihiro “Matz” Matsumoto, misturou partes das suas linguagens preferidas, tais como Perl, Smaltalk, Eiffel, Ada e Lisp visando construir uma linguagem que equilibrasse programação funcional e imperativa.

Inicialmente, Matz olhou para as outras linguagens para encontrar a sintaxe ideal. Após finalizar sua pesquisa, ele disse, “Eu quero uma linguagem de script que seja mais poderosa que Perl e mais orientada a objetos do que Python”. E assim foi feito. Ruby é uma linguagem de script muito poderosa e é completamente orientada a objetos. Cada bit de informação e código tem suas próprias propriedades e ações. Para demonstrar a orientação a objetos da linguagem, vejam o exemplo!

1
5.times { print "Nós queremos aprender ruby - é extraordinário!" }

Em muitas linguagens, os números e outros tipos primitivos não são objetos. O ruby segue a influência do Smalltalk que concedia métodos e variáveis de instância para todos os tipos. Esta abordagem facilita a utilização do Ruby, uma vez que as regras aplicáveis aos objetos se aplicam a todos os elementos.

Analisando agora o código, veremos que ele possui maior legibilidade e entendimento, visto que uma pessoa que saiba inglês é capaz de interpretar o comando sem problemas, é muito superior aos iteradores tradicionais das outras linguagens e a codificação é mais simples, sendo necessário escrever bem menos código.

E não para por aí. O ruby permite que você criar métodos que possuem forma e propósito diferenciados: são os métodos finalizados com ! (exclamação) e os finalizados com ? (interrogação). Para que você possa entender, observe o código abaixo:

1
atendente.registra_recado!(agenda_pessoal, recado) if pessoa_procurada.esta_na_empresa?

Quanto à semântica, podemos observar os dois tipos de métodos citados acima. Foi convencionado que os métodos finalizados com exclamação indicam que sempre haverá uma alteração do estado do objeto após a chamada deste método e que os métodos finalizados com interrogação questionam alguma coisa ao objeto e sempre retornarão true ou false.

Quanto à sintaxe, podemos observar a inversão da construção do bloco if. No caso, o intuito é deixar a instrução mais intuitiva, ou seja, executar a instrução apenas se a expressão lógica for verdadeira. Pensando ainda em deixar o código mais intuitivo, foi criado o comando unless para representar o senão ao invés de if !expression. O Ruby não exige ponto e vírgula ao final de cada linha e possui um meio muito fácil de criar e iterar um array de elementos, como pode ser observado:

1
2
3
4
itens_ids = [1, 2, 3, 4, 5]
itens_ids.each do |item|
  item.do_something
end

E ainda tem mais! O Ruby possui um modo interativo para que o desenvolvedor possa executar comandos da linguagem, fazer testes de classes e módulos criados, dentre outros. Este modo interativo é chamado de irb (Interactive Ruby). Visualmente é muito similar com um console/terminal. Se você executar o comando self.class dentro deste terminal, irá ver que irb é uma instância da classe Object, comprovando que tudo, mas tudo mesmo, é um objeto em ruby.

Ruby ainda é uma linguagem muito flexível, visto que permite aos desenvolvedores alterar livremente o core da linguagem. Partes essenciais da linguagem podem ser removidas ou redefinidas se necessário. Ruby tenta não restringir o desenvolvedor. Um exemplo bem simples pode ser visto na adição de dois valores, viabilizada através do operação de adição (+). Porém, se eu preferir utilizar a palavra legível plus, eu posso adicionar o método na classe Numeric, que pertence ao core do Ruby, como mostrado a seguir:

1
2
3
4
5
6
7
class Numeric
  def plus(x)
    self.+(x)
  end
end
 
y = 5.plus 6

Estas são apenas algumas das muitas facilidades que a linguagem oferece ao desenvolvedor! O ruby é uma linguagem simples e fácil mas também é robusta. Dentre as funcionalidades que já foram implementadas na linguagem estão o tratamento de exceções, o garbage collector e a possibilidade de inserir chamadas nativas a código C, dentre outros.

Se você gostou ou já experimentou, deixei um comentário retratando como foi a experiência com a linguagem. Se você tem amigos que acham que Java ou Php são tudo na vida, compartilhe esse link com eles através de email ou das redes sociais!

Referência: http://ruby-lang.org/


Leia também:

  1. Ruby versus Rails
  2. Java versus Ruby On Rails
  3. Caelum Ensino e Inovação – Apostilas abertas para download

Diego Roriz - diegororiz - Rails, Tecnologia e Desenvolvimento

Porque utilizar ruby?

0 votos Vota!!

9 Respostas para “Porque utilizar ruby?”

  1. Pedro Henrique 16/12/2009 em 15:40 #

    Seu blog está show de bola Diego!! Parabéns!! Abraços…

  2. Kirk Patrick 16/12/2009 em 15:41 #

    Muito bom o post Diego. Parabéns!

  3. Wendell 16/12/2009 em 16:42 #

    Grande vantagem do ruby é exatamente essa, objetiva e direta.

    Valeu pelo post Diego… o povo RoR precisa saber.

  4. Fernando Allen 16/12/2009 em 18:22 #

    Belo post! O texto está perfeito como um chamado para experimentar a linguagem.

  5. Bigão 16/12/2009 em 21:40 #

    Fala vizones, acompanho alguns blogs e o seu acaba de entrar na minha lista. parabéns ai pro c kra…sucesso

    abss

  6. Valdemar 21/12/2009 em 9:37 #

    Massa, Diegão!
    Como sempre muito competente no que faz!
    Parabéns pelo post e pelo site!

  7. Marcelo 21/12/2009 em 13:57 #

    Muito bom esse post. Já deu p passar uma ideia do ruby, e é animador. Parabéns pelo blog.

  8. Samuel Vinícius 16/09/2010 em 11:26 #

    Realmente o obra do Matz e ótima. Vemos que ela quebrou as barreiras da língua, da cultura e hoje ganha sempre mais espaço. Ainda mais depois que veio o Ruby on Rails


Deixe uma Resposta

Get Adobe Flash playerPlugin by wpburn.com wordpress themes