BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias Python ou Ruby? Qual linguagem escolher?

Python ou Ruby? Qual linguagem escolher?

Favoritos

Hoje em dia expressividade de código é uma das coisas mais importantes quando vamos desenvolver sofware. Papéis e documentação muitas vezes só atrapalham a busca por algo que se auto explica. A maioria dos desenvolvedores buscam esta tal expressividade que pode ser entendida como fácil manutenabilidade, com linguagens que podem tornar o código mais fácil de ler e manter.

Hoje as linguagens que mais atingem esse objetivo são sem dúvida: Python e Ruby. Porém o critério de simplicidade e legibilidade são um pouco diferentes entre elas. Python, por exemplo, diz em sua documentação que:

Casos especiais não são tão especiais para quebrarmos as regras.

Quando se deparar com uma ambiguidade, não ceda à tentação de tentar adivinhar.
Deveria haver uma, e preferencialmente só uma, maneira óbvia de fazer algo.

Se a implementação é difícil de explicar, não é uma boa ideia.

No caso do Ruby, seu criador diz:

é simples na aparência, mas muito complexo no interior, tal como o corpo humano.

Mas qual linguagem é mais expressiva? Ou mais fácil de ser utilizada?

O Luiz do VidaGeek aponta algumas vantagens e desvantagens do Ruby, assim como do Python:

Acho que é bom ter mais de um jeito de fazer a mesma coisa, como o Ruby possibilita. Um jeito só de fazer a mesma coisa, a meu ver, tem a vantagem de facilitar um pouco a leitura do código, graças à uniformidade.

Por outro lado, as peculiaridades da sintaxe de Ruby não me agradam; acho que tornam a linguagem mais difícil de compreender. Os casos especiais são muitos e, às vezes, deixam o programador confuso quanto à necessidade de chaves, por exemplo.

Uma característica muito importante que a linguagem Ruby deveria ter, mas só Python tem, são argumentos rotulados. Em Ruby, costuma-se utilizar um hash para suprir essa necessidade, o que, convenhamos, não é muito elegante.

No C2.com tem uma matéria que compara vários aspectos das linguagens. Dentre eles, é citado um aspecto imporante que é a questão da comunidade. Sem dúvida no Brasil a comunidade Ruby é maior e a quantidade de bibliotecas e ferramentas, apesar da comunidade Python também ser grande, ainda não se compara a comunidade Python.

Outra questão discutidade é a facilidade de aprendizado. Muitos defendem que a maioria dos iniciantes em programação podem aprender com mais facilidade a linguagem Python.

Sim. I gosto mais de Ruby do que de Python, mas muitas vezes iniciantes me perguntaram qual linguagem eu recomendaria como primeira linguagem de programação, e eu sempre digo a eles, "Smalltalk ou Python"-- AdamSpitz

Uma série de comparações são feitas e você pode conferir aqui. Eles abordam até questões sobre performance.

E você leitor? Que aspectos considera relevantes nesta discussão? Dê sua opinião.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT