Lançado JRuby 1.1

62 respostas
Luca

Olá

O JRuby é uma implementação de Ruby feita 100% em Java.

Ruby, para quem ainda não conhece, é uma linguagem interpretada MUITO mais poderosa do que o Java. Os comandos mais poderosos do Ruby permitem escrever programas com um número muito menor de linhas sem que fique difícil de ler.

Parafraseando o Pat Eyler na apresentação do livro do Ola Bini sobre JRuby, digo que JRuby não é tão gostoso quanto chocolate Diamante Negro, mas com certeza merece sua atenção. No prefácio do mesmo livro, o Martin Fowler diz que o JRuby é importante para a comunidade Java, porque oferece a chance de experimentar uma linguagem poderosa e um framework igualmente poderoso, enquanto ainda usufrui das vantagens das inúmeras excelentes bibliotecas disponíveis para Java e também poder trabalhar tanto em Ruby como em Java.

O principal objetivo da versão 1.1 foi a melhoria na performance mas há outras novidades:

  • Compilação de Ruby para Java Bytecode (modos AOT e JIT)
  • Biblioteca Oniguruma (para regex) portada para Java (muito mais rápida do que a do JRuby 1.0)
  • Refatorada a implementação de IO
  • Melhoria no consumo de memória

Homepage: http://www.jruby.org/
Download: http://dist.codehaus.org/jruby/

[]s
Luca

62 Respostas

R

Olá Luca.
Realmente trabalhar com ruby é muito bom, e usar a implementação do JRuby também é uma execelente escolha, comentamos bastante sobre essa nova linguagem e os seus beneficios.
Porem o meu conhecimento sobre Ruby é limitado, você poderia citar casos onde isso ocorra: linguagem interpretada MUITO mais poderosa do que o Java. Os comandos mais poderosos do Ruby permitem escrever programas com um número muito menor de linhas
O que vem a ser mais poderoso :?:

zwingli

No site Ruby Brasil tem uma matéria falando do JRuby: http://ruby-br.org/?p=179

Um trecho da matéria diz: “A idéia é tão boa, que o Charles Nutter, criador e desenvolvedor do JRuby, foi contratado pela Sun para dedicar-se integralmente ao projeto.”

O site tem várias matérias e tal… vale a pena a consulta, por todos os interessados na lei do menor esforço :smiley:

Luca

Olá

ronildobraga:
você poderia citar casos onde isso ocorra: linguagem interpretada MUITO mais poderosa do que o Java. Os comandos mais poderosos do Ruby permitem escrever programas com um número muito menor de linhas
O que vem a ser mais poderoso :?:

O melhor que posso dizer é: Experimenta!

Qualquer programa escrito em Ruby tem muito menos linhas do que um similar em Java. O principal motivo é que em Ruby, muitas vezes, se pode fazer em uma ou duas linhas, o que em Java às vezes é necessário mais de 20. E não estou considerando a supressão de {}s ou pontos e vírgulas. Acho que isto é a primeira coisa que a gente percebe ao aprender Ruby.

Tentando exemplificar sobre o que me refiro ao poder da linguagem e sua API, cito também o Scala. Scala gera bytecodes Java mas rambém é uma linguagem muito mais poderosa que permite escrever os mesmos programas escritos em Java com muito menos comandos.

Ficou claro que o que chamei de poder da linguagem e de sua API é propiciar fazer as mesmas coisas gastando menos tempo e energia?

[]s
Luca

R

Sim, entendi.
Eu perguntei porque não concordo com a sua opinião.
Guando eu melhorar os meus conhecimentos sobre ruby, talvez eu entenda melhor a sua opinião.

D

Acho a notícia ótima. Mas, infelizmente, continuo achando o Rails sobre ele lento. Uma pena. Mas pelo que estou vendo, eles agora estão correndo atrás desse quesito, porém, ainda deixa muito a desejar.
Para outras coisas, já melhorou demais. Vale a pena usar essa versão, com certeza.

Bons códigos a todos

j-menezes

Pelo fato do codigo ser pequeno nao significa ser mais rapido e tao pouco
legivel em alguns casos, principalmente em grandes projetos.

Luca

Olá

Certo, principalmente para quem esquece de que Ruby é uma linguagem interpretada.

Mas há também muitas coisas que podem e devem ser feitas para que o site não fique lento. O Stuart Halloway, javeiro de primeira hora e atualmente rubista, costuma dizer que até hoje ainda não viu um projeto em que a lentidão do ruby atrapalhe o negócio. Isto é verdade desde que o programador escreva o código lembrando SEMPRE que a linguagem é interpretada (*) e que tome algumas medidas a mais no site do que simplesmente usar o webrick como se usa em desenvolvimento. O google está cheio de recomendações sobre como evitar que um site usando Rails fique lento.

(*) há trechos de código em versões antigas do Rails em que isto foi um tanto esquecido como aponta Stefen Kaes no livro Writing Efficient Ruby Code.

O Java também pode ser muito lento quando usado por programadores descuidados. Um exemplo clássico é a ignorância generalizada sobre as classe do java.nio e o tanto de gente que teima em não usar.

[]s
Luca

D

Mais isso não muda o fato de ser lento. Ainda que tenhamos a possibilidade de acessar bibliotecas Java, se a pessoa for utilizar apenas Rails para criar novas aplicações, não há vantagem em cima do JRuby. É isso que eu quis dizer :smiley: .

D

j-menezes:
Pelo fato do codigo ser pequeno nao significa ser mais rapido e tao pouco
legivel em alguns casos, principalmente em grandes projetos.

Em um projeto grande, com um grande número de pessoas, ainda não vejo como Ruby pode ajudar. Além do mais, nunca devemos esquecer que os holofotes se voltaram para Ruby devido ao Rails. Sem Rails, Ruby é uma linguagem como tantas outras que existem. Aliás, ainda que goste do Rails, sem esse framework, continuaria trabalhando com Python como sempre fiz.

Mauricio_Linhares

Que mal lhe pergunte, o que é que uma linguagem em específico tem haver com o número de pessoas em um projeto?

Ter muitas mãos mexendo no mesmo código é ruim independente da linguagem ou da ferramenta que você escolher e é uma falha de gerência de projeto abominável.

Javabuntu

bacana o lançamento… mas será quanto tempo vai levar pra ganhar mercado :?: digo do sentido de ver oportunidade de empregos pedindo tal, será que demora :?:

D

Que mal lhe pergunte, o que é que uma linguagem em específico tem haver com o número de pessoas em um projeto?

Ter muitas mãos mexendo no mesmo código é ruim independente da linguagem ou da ferramenta que você escolher e é uma falha de gerência de projeto abominável.

Nem sempre, como no caso do Ruby, quando uma variável é declarada com o mesmo nome e tipo em outro lugar, não sendo de escopo local, como você faz. Desculpe a ignorância, mas nunca trabalhei com Ruby on Rails com equipe maior que 5 pessoas. Em java as equipes são bem, mas bem maiores, nem tem comparação.

Mauricio_Linhares

Em outro lugar não sendo de escopo local? No escopo do que? De uma closure? Uma variável declarada em um método só existe dentro de um método e uma variável declarada dentro de uma closure só existe dentro de uma closure. Não entendi o seu ponto.

Você já trabalhou profissionalmente com Rails?

E isso é bom? Mais uma vez, equipes grandes demais mexendo num mesmo “módulo” é sinal de falta de competência dos gerentes.

mcbarsotti

Luca:
Olá
é uma linguagem interpretada MUITO mais poderosa do que o Java.

huummm, não diria “MUITO mais poderosa do que o Java” e sim “Uma sintaxe mais facil doque o java”, já que o poder da linguagem vem de quem a usa, independe da linguagem.

Ai concordo :lol:

abraços!

L

Ohhhh…“MUITO mais poderosa do que o Java” … Acho que cada linguagem tem seus prós e contras… acho que não tem uma “MUITO mais poderosa”… quem acha isso, por que não formam uma comunidade do JRuby ou Ruby que seja … ou se já existe postem estas “frases” lá… Me desculpem pela maneira com que escrevi …mas as vezes não me conformo com certas afirmações …

Luca

Olá

leopoldof:
Ohhhh...."MUITO mais poderosa do que o Java" ... Acho que cada linguagem tem seus prós e contras.... acho que não tem uma "MUITO mais poderosa"..... quem acha isso, por que não formam uma comunidade do JRuby ou Ruby que seja .... ou se já existe postem estas "frases" lá... Me desculpem pela maneira com que escrevi ...mas as vezes não me conformo com certas afirmações ...

Um exemplo de como uma linguagem pode ser mais poderosa do que outra dentro do contexto do que eu escrevi, isto é, como uma linguagem pode ter modos de fazer as coisas usando muito menos comandos

Java
import java.util.Map;

public class PrintEnv {
   public static void main(String[] args) {
      for (Map.Entry entry: System.getenv().entrySet()) {
         System.out.println(
            String.format("%s : %s", entry.getKey(), entry.getValue()));
      }
   }
}
Ruby
ENV.each {|k,v| puts "#{k} : #{v}"}

Quando se estuda Ruby aparece um monte de exemplos como este. E é neste aspecto que escrevi que uma linguagem mais poderosa pode fazer as mesmas coisas com menos comandos.

E para você Leopoldo, que entrou no GUJ no dia 7 do mês passado, primeiro seja bem vindo. Segundo digo que aqui no GUJ a gente tem discutido e comparado outras linguagens desde a fundação do GUJ. Muita gente aqui usa no dia a dia outras linguagens. E muita gente aqui acha muito bom um programador que procura aprender outras linguagens. Tanto isto é verdade que criamos um forum só para isto. Porém notícias devem ser postadas aqui mesmo.

[]s
Luca

L

Ok, ok… mais uma vez peço desculpas pela maneira como me espressei, é que não acho válido dizer que uma liguagem é melhor que a outra, mas se comparar dentro do contexto de codificação, até concordo. Mas analisando de um ponto de vista maior, é como disse, cada linguagem tem seus prós e contras.

Quanto ao tempo de meu cadastro… não me cadastrei no mês passado, faz quase um ano, não sei porque tá aparecendo isso… de um dia pro outro as minhas mensagens zeraram e data de cadastro tbm… Mesmo assim isso não significa que eu entenda ou não de java pelo tempo de cadastro, pois posso estar trabalhando com java a 5 ou seis anos e ter me cadastrado somente o mes passado, se for o caso

Mas não quero prolongar discuções… analisando melhor, acho viável e útil a discução sobre outras linguagens. Apenas não concordei com a frase.“Muito mais poderosa”… mas como você disse… “Dentro de um contexto”… aí é válido…

Valeu…

R

Sinceramente, não dou créditos ao Ruby por causa desse mau exemplo.

Ruby tem sim muitos beneficios, por exemplo o active record, e quando se usa o rails na fabricação do software, ae a diversão fica ainda melhor, pois tem conceito de convenção ao invés de configuração, ou seja, muita coisa ja vem pronta por convenção e não precisamos ficar configurando.

Mas dizer que Ruby é melhor porque a sua sintaxe é mais clean, eu não acho muito coerente, pois os meus problemas de software nunca estão relacionados a sintaxe da linguagem.
Apesar de eu ainda não ter usufruido muito da sintaxe Ruby, eu acho que entendo o seu ponto de vista Luca, realmente uma sintaxe mais clean ajuda, mais este é o menor dos meus problemas.

Luca

Olá

Sem polemizar mais do que já polemizei, não me lembro de ter escrito que Ruby é melhor ou que Java seja melhor. Apenas me lembro de ter escrito que Ruby é uma linguagem cujos comandos são mais poderosos do que Java assim como os comandos Scala também tem mais poder do que os de Java.

Uso Fortran até hoje e onde eu uso, Fortran é melhor do que Java. Mas os comandos de Fortran, mesmo no Fortran 95, são menos poderosos do que a maioria das linguagens que já usei à exceção de Assembler. Não usaria Fortran em 99,999% dos casos de uso normais do dia a dia.

Alguém aqui falou em Phyton. Só de lembrar que o YouTube foi feito com Phyton já fica claro para mim que Phyton pode ser uma ótima opção quando se tem liberdade de escolha.

Uma das vantagens do JRuby é propiciar aproveitar parte do legado do Java. Nisto Scala é melhor ainda. Mas Scala não dispõe de um framework MVC tão ágil como o Rails ou mesmo o Merb.

Esta notícia serve para aqueles que quiserem experimentar JRuby ou para aqueles que já usam.

[]s
Luca

R

Realmente, foi uma má interpretação minha.
Entendo melhor agora o seu ponto de vista, e concordo com o que vc disse.

O

Minha opinião sobre ruby é que se pode fazer em menos linhas sim, mas o código fica mais obscuro e consequentemente difícil de ler.

Sou muito mais Python, diminui a quantidade de código mas não obscurece a treta.

Apesar de que essas linguagens de script são so pra projetos médios pra baixo.

cv1

Por exemplo…?

Por exemplo…?

Por exemplo…?

cv1

Bom, se eh assim… boa parte do Yahoo foi feita em PHP, e a Slashdot foi feita em Perl. Nao quer dizer que essas sejam linguagens ideais pro seu time, pro seu projeto, ou pra sua carreira. :wink:

C

onolox:

Apesar de que essas linguagens de script são so pra projetos médios pra baixo.

Posso até imaginar java sendo utilizado nesses graaaaaandes projetos… :lol: :lol: :lol:

L

Nossa… Nem comento mais… Mas na minha opinião… Ruby não pega…

Mauricio_Linhares

Pois é né…

MapinH

1ª - Falamos sobre Ruby ou JRuby ?

2ª - Se Java fosse ruim, esse fórum não existiria.

3ª - Se ruby fosse ruim, não teriam as empresas que o amigo ai acima citou usando-o.

Portanto, só consigo enxergar uma conclusão: Ruby é bom? Sim. Java é bom? Sim.
Cada um tem seus prós e contras. Eu sou a favor de Java por estar familiarizado com ele, e por ter sido a primeira linguagem de grande porte que eu aprendi.

Então meus caros amigos do GUJ, vamos parar com essa Jihad (http://pt.wikipedia.org/wiki/Jihad) e discutir os prós e contras de cada linguagem e ajudar nosso amigos aqui do GUJ a decidir qual usar para cada projeto.

Abraços! :wink:

Guitar_Men

Não conheço ruby, mas o código me da arrepios… Mas pode ser soh impressão mesmo…

S

MapinH:

2ª - Se Java fosse ruim, esse fórum não existiria.

E como você explica a existência de fóruns sobre Windows?

Rubem_Azenha

cv:

Bom, se eh assim… boa parte do Yahoo foi feita em PHP, e a Slashdot foi feita em Perl. Nao quer dizer que essas sejam linguagens ideais pro seu time, pro seu projeto, ou pra sua carreira. ;)

É… só que o Python tem agora bela uma vantagem… o google ta fornecendo um serviço de “hospedagem” para Python :shock:

Mauricio_Linhares

Como é que é?

Fabio_Kung

Esperem para ver a alavancagem do Django!

Luca

Olá

Fabio Kung:
http://googleappengine.blogspot.com/

Esperem para ver a alavancagem do Django!

google:
Unfortunately, space is limited during Google App Engine’s preview release. As we expand, we’ll invite more developers, but for now you’ll have to wait.

Would you like to be notified by email when space becomes available?

Mais de 10.000 chegaram antes do que eu…Sniff… :frowning:

Mas ainda é possível baixar o SDK para experimentar

[]s
Luca

fabiofalci

Luca:
Olá

Mais de 10.000 chegaram antes do que eu…Sniff… :frowning:

Mas ainda é possível baixar o SDK para experimentar

[]s
Luca

Eu tambem. Olhei a noticia na infoq, esperei um pouco para ler, quando tentei me registrar ja nao dava mais :frowning:

Fabio_Kung

vai usando o sdk, que não tem diferença nenhuma mesmo pra rodar lá no google app engine.
o deploy tb é facílimo. Tô gostando…

cv1

Fabio Kung:
vai usando o sdk, que não tem diferença nenhuma mesmo pra rodar lá no google app engine.
o deploy tb é facílimo. Tô gostando…

Eu gostei muito da ideia, tb. Pena que as limitacoes e esquisitices que eu achei no Django quando trabalhei com ele em '06 ainda tao todas la :frowning:

Rubem_Azenha

Luca:

google:
Unfortunately, space is limited during Google App Engine’s preview release. As we expand, we’ll invite more developers, but for now you’ll have to wait.

Would you like to be notified by email when space becomes available?

Mais de 10.000 chegaram antes do que eu…Sniff… :frowning:

Mas ainda é possível baixar o SDK para experimentar

[]s
Luca

Idem… :cry: :cry: :cry: :cry: :cry:

Kenobi

Não entendo essas empresas, andando na contra mão do movimento. Sei que no SilliconValley várias Startups estão nascendo baseadas no Django, entretanto o movimento Ruby é muito maior …fiquei bastante frustrado quando li.

Fabio_Kung

o problema é que ruby não é uma das linguagens (homologadas? :twisted: ) do google. Já Python, JavaScript, C/C++ e Java são.

B

mas será que o mercado precisa mesmo escolher apenas um deles ou esse bolo da pra dividir com todo mundo? :smiley:

Kenobi

mas será que o mercado precisa mesmo escolher apenas um deles ou esse bolo da pra dividir com todo mundo? :D

Também acho que dá pra dividir, poderiam ter feito algo para as VHLL emergentes, seria mais inteligente.

fabiofalci

Segundo eles, python é a primeira liguagem, mas outras linguagens devem ter suporte tb.

http://code.google.com/appengine/docs/whatisgoogleappengine.html

renatoes

Sem querer distorcer o foco do post, mas aproveitando: utilizo Python para o meu TCC, e apesar de não contar com muita experiência em desenvolvimento Web, gostaria de saber se alguém já utilizou o Turbo Gears em algum projeto, pois dei uma lida na documentação e achei muito bacana :slight_smile: .

[]'s

mcbarsotti

aueuheahuaeuhaeuheauh, boaaa!!
Concordo!!! :twisted:

renatosilva

Me falaram que esse Django é melhorzinho que o Rails

Fabio_Kung

cada um fala o que quer

Rubem_Azenha

Eu acho mais interessante gerar o banco a partir do modelo OO e não o contrário. O Django funciona assim, não?
É claro que isso nem sempre é possível e que até meio que da para fazer isso com Rails+db migrations.

renatosilva

Quem fazia o contrário acho que era um outro framework Python…

MapinH

O Windows é ruim? Essa é a SUA opinião (Não que ela não seja a minha)

Windows é bom para casos específicos. O Linux está a um passo de ser tão bom para Desktops quanto o Windows, isso se falarmos de empresas. Em Desktop doméstico, a escolha é Windows por causa de jogos e aplicativos. Não adianta vir me falar de Wine pois eu mesmo, que trabalho a 1 ano com Linux, peno um pouco para instalar algumas Apps Win no Ubuntu.

Cada um é bom para um caso!

Fabio_Kung

Rubem Azenha:
Eu acho mais interessante gerar o banco a partir do modelo OO e não o contrário. O Django funciona assim, não?
É claro que isso nem sempre é possível e que até meio que da para fazer isso com Rails+db migrations.

Exato. Vantagens e desvantagens. Cada um é melhor em um cenário diferente!

Não dá para dizer que um é melhor que o outro. Vamos todos cair no “eu prefiro o [insira seu ORM preferido]”.

cv1

O sistema operacional Windows eh, sim, bem ruim.
A plataforma Windows nao eh la tao pessima assim, mas existem melhores.

renatosilva

Eu acho mais interessante gerar o banco a partir do modelo OO e não o contrário. O Django funciona assim, não?
É claro que isso nem sempre é possível e que até meio que da para fazer isso com Rails+db migrations.

Acho que o TurboGears fazia isso e o Django faz igual o Rails

rodrigoallemand

Voltando ao assunto JRuby, porque a maioria dos exemplos que mostram que "em Java vc escreve mais e no Ruby, menos" mostram coisas desse tipo:

Java:
import java.util.Map;   
  
public class PrintEnv {   
   public static void main(String[] args) {   
      for (Map.Entry entry: System.getenv().entrySet()) {   
         System.out.println(   
            String.format("%s : %s", entry.getKey(), entry.getValue()));   
      }   
   }   
}
Ruby:
ENV.each {|k,v| puts "#{k} : #{v}"}
Porque não comparar os mesmo comandos apenas?!?
Java:
for (Map.Entry entry: System.getenv().entrySet())
   System.out.println(entry.getKey() + " : " + entry.getValue()));

Aí sim nós vemos que em Java vc escreve muito...
Agora, colocar uma classe inteira de Java e apenas uma linha de Ruby é demais, né!!!
Ruby não precisa apelar... a escrita é melhor, sim...

louds

O sistema operacional Windows eh, sim, bem ruim.
A plataforma Windows nao eh la tao pessima assim, mas existem melhores.

Ruim é banco te obrigar a usar VMWare só para conseguir pagar suas contas. Já que o site se recusa a funcionar em linux ou OSX.

Luca

Olá

O pior é que não foi apelação. Escreva só aquele comando e salve em um arquivo com qualquer nome com extensão .rb e depois execute com ruby nome do arquivo.rb

Aquela única linha é o programa todo em ruby enquanto o programa todo em Java é tudo aquilo que escrevi e que ainda poderia ser maior se escrito com Java 1.4.

[]s
Luca

Mauricio_Linhares

Luca:
Olá

O pior é que não foi apelação. Escreva só aquele comando e salve em um arquivo com qualquer nome com extensão .rb e depois execute com ruby nome do arquivo.rb

Aquela única linha é o programa todo em ruby enquanto o programa todo em Java é tudo aquilo que escrevi e que ainda poderia ser maior se escrito com Java 1.4.

[]s
Luca

Tem coisa pior do que fazer entrar na cabeça de um iniciante o “public static void main()”?

cv1

classpath, oras :slight_smile:

S

louds:
Ruim é banco te obrigar a usar VMWare só para conseguir pagar suas contas. Já que o site se recusa a funcionar em linux ou OSX.

Isso não torna o Windows nem um pouco melhor. E você pode sempre mudar de banco.
Tenho conta no Banco Real, BB e Santander. Todos funcionam no Fx/Linux.

Luca:

O pior é que não foi apelação. Escreva só aquele comando e salve em um arquivo com qualquer nome com extensão .rb e depois execute com ruby nome do arquivo.rb

Aquela única linha é o programa todo em ruby enquanto o programa todo em Java é tudo aquilo que escrevi e que ainda poderia ser maior se escrito com Java 1.4.


Eu também acho apelação.

Os arquivos .rb costumam ter um ou dois comandos? Ou têm classes, com métodos e os comandos dentro destes?

Sempre que vejo uma comparação de quantidade de código entre Java e Ruby ou outra linguagem, parece que se esforçam bastante pra encher o código Java de coisa desnecessária. Por que você precisa quebrar o println() e o String.format() em 2 linhas, por exemplo?

Não quero iniciar uma discussão Java x Ruby, primeiro porque não defendo linguagem à toa e segundo porque reconheço as vantagens do Ruby, mas me dá medo um dia me deparar com códigos como esses: http://www.guj.com.br/posts/list/67752.java
A sensação que dá ao ver aquela terceira linha do primeiro código é: ainda bem que não dá pra fazer isso em Java!

Fabio_Kung

amigo, código ruim escreve-se em qualquer linguagem

Luca

Olá

Acredite ou não, o código ruby está completo com todas as classes é métodos necessários. Não cabe mais nenhuma linha.

Quanto ao Java é claro que uma linha a menos não faz tanta diferença porque o comendo é necessário.

Dei neste exemplo a pedidos porque já tinha dito que quando estudei ruby, uma das coisas que mais me impressionou foi a possibilidade de fazer as mesmas coisas com muito menos linhas. Atenção que estou falando de Ruby porque se for comparar frameworks Java com Rails aí então o número de linhas a menos é maior ainda.

Repito, não estou dizendo que o resultado final seja melhor ou pior. Mas é claro que no fim do dia a gente vai para casa com a certeza de que escrevemos mais código.

[]s
Luca

S

Com certeza, mas não falo exatamente de “código ruim”. É uma sintaxe citada como vantajosa (e é mesmo), mas que permite fazer coisas assustadoras como aquelas. É claro que isso pode ser minha falta de costume com a sintaxe.

Luca:
Acredite ou não, o código ruby está completo com todas as classes é métodos necessários. Não cabe mais nenhuma linha.

Quanto ao Java é claro que uma linha a menos não faz tanta diferença porque o comendo é necessário.


Não é isso que pergunto.
É: na prática, os arquivos .rb são compostos de 1 ou 2 linhas de comandos?

Se a resposta for “não” e eles precisarem de declarações de métodos e classes, então seu exemplo não é justo. Passa a idéia que em Ruby você escreve 10x menos linhas de código que Java.

E não é somente “uma linha a menos”. Se você tirar o import, a linha em branco, o println quebrado em 2 linhas, as chaves e as declarações, sobra o código do rodrigoallemand, que perde de 2x1. Ou empata, se colocar tudo numa linha (muito maior que a Ruby).

Isso parece aquelas propagandas de políticos que usam um vídeo preto-e-branco pra mostrar a cidade como era antes de assumir e um em cores, pra mostrar como ficou depois. Ruby é mais poderosa que Java, mas não precisa aumentar o contraste desse jeito.

Luca

Olá

Este exemplo assim como muitos outros, não precisa de mais de um linha. Se você baixar o Rails ou baixar qualquer aplicação Ruby, há grandes chances de encontrar com facilidade coisas assim. Só atente para o fato de que em Ruby não há obrigação de ter uma classe única pública com mesmo nome do arquivo.

Em ruby não há imports como Java. Em ruby é possível usar classes, métodos ou variáveis definidas em outros arquivos (módulos) que são incluídas como uma espécie de composição (mixin). É um conceito diferente do import do Java ou até mesmo do include do C.

Nào estou aqui fazendo apologia do Ruby como sendo melhor do que Java. Já ganhei dinheiro programando em Fortran, Cobol, Pl/1, APL, Assembler de mainframe, assembler de micro, basic, VB, C, C++, Clipper, linguagem de máquina, linguagem de calculadora HP, Delphi e Java (que aprendi em 1997), Nos últimos 2 anos aprendi erlang, Ruby e Scala. Mantenho minha opinião de que a melhor linguagem para um projeto depende do problema e do conhecimento da equipe de desenvolvimento. E mantenho também a opinião de que Ruby e Scala permitem desenvolver sistemas escrevendo muito menos linhas de código do que usando Java, C/C++ e outras. Vale a pena investir pelo menos para aprender outros modos de fazer a mesma coisa.

[]s
Luca

Criado 5 de abril de 2008
Ultima resposta 13 de abr. de 2008
Respostas 62
Participantes 24