domingo, 4 de abril de 2010

Ruby x Python


Nos últimos tempos tenho metido a cara no Python, e também aprendendo Django, para um projeto na Concrete e realmente gostei do que vi, como mostro aqui.Não é difícil se apaixonar pela linguagem devido a facilidade e simplicidade de suas libs.




No ultimo ano aprendi Ruby e Rails e consegui trabalhar em 2 projetos usando a tecnologia. Pra mim que era ( e sou ainda!) Javaholic, mas não Shiita, foi totalmente gratificante, ainda mais ver o projeto JRuby decolando, e facilidade e bom gosto no uso da versão para JVM e seu ecossistema.





Alem das vantagens e desvantagens de cada mundo, coisas como OpenSource e consequentemente comunidade forte e vibrante, composta por muitos bons programadores facilita a queda livre no ambiente dessas linguagens .




Meu conselho geral sobre a questão resume Python vs Ruby até perguntando "como é seu trabalho de cérebro?"
Porque, realmente, as duas linguagens são aproximadamente equivalentes para a maioria dos efeitos práticos (excepto Unicode, Ruby, mas que será fixa em breve).




A grande diferença está no idioma e nas convenções como por exemplo, os programadores de Ruby, tendem a ser muito mais dispostos a fazer coisas como a adição de novas funcionalidades para o built-in classes(Ferramentas perigosas como disse Martin Fowler), enquanto que programadores Python geralmente hesitam em fazer "monkeypatching" em qualquer lugar (e não pode fazê-lo para o built-ins, porque não são mutáveis).


Ruby tem muitos açucares sintaticos (alguns dos quais serão imediatamente familiares), mas é claro que vem com a sobrecarga de ter que aprender como eles funcionam. Python tem bem menos malabarismos, mas pode ser mais verboso as vezes.




De qualquer forma, independentemente de sua escolha você vai ter acesso à documentação boa (Dive Into Python é um grande livro, idem o livro PickAxe no lado Ruby), comunidades fortes e as pessoas motivadas a escrever montes de código, sólidos e reutilizáveis, dispostos a vencer de qualquer maneira esta "disputa".


Para web, tanto o Django quanto o Rails são frameworks MVC com principicos como DRY(Don't Repeat Yourself), COC(Convetion Over Configuration) alem de forte comunidade que geram muito codigo e documentação, o que facilita e tornam mais doce a vida de qualquer equipe de desenvolvinento.

Para deployment, a utilização do Google App Engine pode ser vantajosa e uma das primeiras linguagens que rodaram nessa plataforma de desenvolvimento foi o Python(Django), seguido pelo Java que tornou possivel o deployment de aplicações JRuby/Rails.









Eu diria que mergulhar seus dedos do pé em ambos os grupos, em seguida, seguir com o que você sente mais confortável dentro dos paradigmas de programação ajuda a se ambientar e ir sentindo o conhecimento aterrar no cérebro.


Pra quem ficou curioso e quer um teste drive com essas linguagens , referencias de Ruby(JRuby) e de Python.





Obrigado pelo seu tempo!

Marcadores:

1 Comentários:

Anonymous Anônimo disse...

valeu ajudou!

27 de fevereiro de 2012 às 11:59  

Postar um comentário

Assinar Postar comentários [Atom]

<< Página inicial