Skip to content

Instantly share code, notes, and snippets.

@leobalter
Created November 11, 2011 13:55
Show Gist options
  • Save leobalter/1358053 to your computer and use it in GitHub Desktop.
Save leobalter/1358053 to your computer and use it in GitHub Desktop.
Escrever Ruby de uma forma melhor, com tipagem ou código mais bonito!

Original em: http://leobalter.net/cases/escrever-ruby-de-uma-forma-melhor-com-tipagem-ou-codigo-mais-bonito/

Escrever Ruby de uma forma melhor, com tipagem ou código mais bonito!

Depois das ideias super bacanas que a comunidade Ruby trouxe, de fomentar o CoffeScript para escrever um “JavaScript” mais bonito, ou da Google de fazer o Dart para escrever um JavaScript “tipado”, resolvi também trabalhar em algo que deixaria o Ruby perfeito.

Puby e Juby! São dois projetos distintos mas com propósitos excelentes:

Puby

No Puby podemos escrever para a plataforma “Pails”, ou também “Puby on Pails”. A ideia é simples: o desenvolvedor precisa escrever em uma linguagem bonitona, como o Python, e aproveita a plataforma e bacanisse do framework Ruby on Rails.

Nada de indentação feiona, é importante seguir regras básicas para o código ter uma leitura mais humana.

Assim, um código onde está escrito:

print "Hello, World!"

é compilado para:

puts 'Hello, World!'

Não tem muito mistério, é só saber Ruby e Python que dá certo.

Juby

Já no Juby é pra dar maior robustez aos projetos feitos em Rails, assim temos o framework “Juby on Jails”.

A ideia é trazermos todo o conceito de classes e tipagens obrigatórias do Java para o Ruby, além de métodos e própriedades privadas, estáticas, e outras coisas a mais que tornam o Java tão performático.

Assim um código com:

public class HelloWorldConsole  
{  
    public static void main(String args[])  
    {  
        System.out.println("Hello, World!");  
    }  
}

é compilado para:

puts 'Hello, World!'

Traz sempre uma maior liberdade para o desenvolvedor e inclusive da pra trazer boas bibliotecas e elementos de frameworks do Java para o Rails, como o Struts, Hybernante, JSF, etc.

Resultado:

Todo o código é convertido para Ruby, isso pode ocorrer em um momento de deploy, assim, não compromete a performance e boa escrita do seu código, até porque código sempre é bem escrito em python e robusto em Java.

A comunidade Ruby tem muito mais a ganhar de colaboração pois pode ter ajuda massiva da galera de Java e Python e assim criar mais apps interessantes.

Assim que tiver mais resultados efetivos, vou publicar o código que já está no github.com

@fernandokosh
Copy link

Po, você esqueceu do PhPuby:

print 'Hello, World!';

é compilado para:

puts 'Hello, World!'

Huahuahuahuahua

@deyvin
Copy link

deyvin commented Nov 11, 2011

a 2 segundos achei que era algo sério, depios que vi os nomes, aí sim notei que era zuação.
kkkkkkk

@lucasvalhos
Copy link

tenso rsrssrsr, vão trabalhar gente !!!

@deyvin
Copy link

deyvin commented Nov 11, 2011

+1 "@lucascarvalho tenso rsrssrsr, vão trabalhar gente !!!"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment