Apresentando Ruby on Rails

Resolvi escrever esse post para mostrar algumas características do Ruby on Rails, um framework que me chamou muito a atenção após ver a implementação de um blog em 58(!) linhas.

O Rails é um framework web criado em 2004, com 4000 linhas de código, por David Heinemeier Hansson. Foi projetado para que suas camadas se comuniquem de forma transparente e seguindo a arquitetura MVC. Isso o torna extremamente produtivo e simples de aprender.

Entre outras características bacanas do RoR posso citar o suporte nativo a Ajax, pela biblioteca script.aculo.us e a portabilidade. Desenvolvo no Mac OS e levo para meu servidor Linux sem sofrimentos. Além disso, o Rails conta com uma forma facilitada de instalar novos componentes (o gem). Esses componentes facilitam tarefas do programador, partindo desde um gerenciador de uploads até um sistema de galerias de imagens.

É com essa introdução da linguagem que aponto alguns links de onde começar na linguagem.

Começando

1) Ruby on Rails (onde tudo começou)
2) Conhecendo Ruby em 20 minutos e try ruby! (tutorial interativo da linguagem).
Mais documentação: Ruby-Doc.org, Ruby Programming Language e RailsHelp.
3) Ruby para quem conhece PHP, para quem conhece Java e para quem vem de outras linguagens.

Em pt_br

4) Ruby on Rails in Brazil
5) Ruby on Br – Comunidade bem bacana
6) Wikipedia falando sobre RoR
7) Outra introdução sobre RoR em português.
8) Outro tutorial prático sobre Rails
9) Rails para diversão e lucro – conteúdo muito bom!
10) Blog do Eustáquio, figurinha carimbada e autor do livro Ruby: Conhecendo a linguagem
11) Balance On Rails, de outro cara carimbado, Fabio Akita, autor do Repensando a Web com Rails (aliás, peguem o capítulo demo).
12) juca on rails – o cara fez um mini curso de Rails por IRC. No blogue tem todos os logs das aulas. Além disso, tem um ótimo post sobre livros da linguagem.
13) Tecnologias Web – blog falando de Rails. Tem um post falando de que diabos é esse tal de MVC.
14) Listas no Google Groups: rails-br e ruby-brasil.

More

15) Ruby Application Archive e RubyForge: snippets para projetos
16) Mais tutoriais de Rails e Rails no Digg
Ruby Forum

P.S.: Se você tem algum link pra indicar ou uma retificação no artigo, comente!

 

Leonardo

Registros de Leonardo Faria sobre desenvolvimento web

 
  • Muito bom, Leonardo, já foi para meu delicious
    =)

  • Charles Babagge

    Leonardo,
    Parabéns pelo artigo, inteligente, preciso e claro.
    Só um pedido: Por favor, não cita como referência o blog de certas pessoas que estão se auto promovendo nas custas do RoR, sem acrescentar nada para o comunidade RoR no Brasil.
    Dá uma pesquisada na web que vc vai entender o que estou falando.

    Parabéns e viva ao RoR.

  • Muito legal o seu artigo.

    Eu necessito, urgentemente, aprender alguma linguagem de programação…

    Abraços.

  • Neoman

    Caro , Nelson Biagio Junior se pretendes apreender uma linguagem de programacao nao comece pelo Ruby. Use linguagens mais poderosas , recomendo Java, C/C++, C#. Ruby on Rails é um framawork nao uma linguagem de programacao a sério.
    Abracos.

  • Leonardo, parabéns pelo artigo. Ficou bem resumido, o que é muito bom e os links são bastante úteis.

    Trabalho com Java há dez anos e descobri o Rails em meados de 2006. Fiquei fascinando com o framework (e sua filosofia) e com a linguagem. Ruby, além de ser muito poderoso, é muito elegante. Um presentão para quem gosta de programar.

    Na UFRJ, costumava dar aulas de laboratório em Extreme Programming usando Java como linguagem de apoio. No último semestre, passei a adotar Ruby e me concentrar em Ruby on Rails com os alunos. É impressionante o que eles conseguiram fazer logo na primeira aula, inclusive usando Ajax. Jamais consegui, ou sequer esperei conseguir algo desse nível quando dava as aulas com Java. A diferença de produtividade é muito significativa.

    O nosso site era feito em Java (sem nenhum framework) e migramos para Ruby, usando o Rails, há poucos meses. Isso consumiu pouco mais de duas semanas (duas pessoas, part-time). Uma das coisas que mais me impressionou foi a diferença no número de linhas de código:

    LOC (*) LOC de Testes

    Java 3120 4634

    Rails 161 426

    ———————————–

    Diferença 19x 10x

    (*) LOC = Lines of Code

    Tem que se dar um desconto, porque não utilizávamos nenhum framework antes, no site em Java. Ainda assim, a diferença me pareceu muito expressiva, bem como o tempo de desenvolvimento.

    Essa semana vamos lançar um produto, todo feito com Rails, e o processo de desenvolvimento também foi igualmente rápido e significativamente mais satisfatório do que o que eu experimentava antes com Java. Grande parte disso tem a ver com a linguagem. Ruby é muito poderoso e bem mais expressivo que Java, além de mais pragmático em vários aspectos. Outra coisa importante é o fato de ser mais fácil automatizar testes em Ruby e Rails suporta muito bem essa questão (http://blog.improveit.com.br/articles/2007/01/05/nada-de-janelas-quebradas).

    Rails está crescendo no mundo todo e acredito que irá se disseminar rapidamente aqui no Brasil. Nós já somos o quinto país em quantidade de desenvolvedores Rails ( http://blog.improveit.com.br/articles/2007/01/19/brasil-quinto-lugar-desenvolvedores-rails). Acho que quem está habituado com Java e .Net deveria dar uma olhada, pois o mercado irá mudar e quem estiver preparado vai colher as melhores oportunidades (http://blog.improveit.com.br/articles/2007/01/13/que-tipo-profissional-quando-crescer).

    A comunidade em torno do Rails também está crescendo de forma saudável, em grande parte com a ajuda do RubyOnBr. No final do ano passado tivemos um belo seminário de Rails em São Paulo (que comentamos em http://blog.improveit.com.br/articles/2006/10/31/seminário-ruby-on-rails-reloaded e http://blog.improveit.com.br/articles/2006/10/29/seminario-ruby-on-rails) e, um pouco antes dele, fizemos uma apresentação ao vivo no XP Rio (http://blog.improveit.com.br/articles/2006/10/18/xp-rio-on-rails).

    Essa apresentação foi bem interessante. O objetivo era fazer uma pequena aplicação em uma hora, com três iterações de vinte minutos, que pudessem ser usadas para ilustrar determinados aspectos do framework, tais como convenção, ao invés de configuração, migrations, scaffolds etc. No final, acabou levando duas horas, porque estávamos desenvolvendo e dando explicações, mas todos os presentes ficaram impressionados com a quantidade de coisas feitas em tão pouco tempo.

    Acho que quem desenvolve para a web hoje definitivamente deveria olhar o Rails, nem que seja apenas para conhecer algumas boas idéias.

    Mais uma vez, parabéns pelo artigo! Grande abraço, Vinícius.

  • Cara, um artigo passo-a-passo de forma objetiva e clara, para quem quiser iniciar desenvolvimento com ROR, é uma ótima pedida, ja foi pros favoritos.

  • Rafael

    Ainda prefiro Python e TurboGears, quem quer começar que comece com Python!

  • Fernando

    Neoman, Ruby é uma linguagem e por sinal muito poderosa. Recomendar Java, C/C++ tudo bem, mas C# tu deve ta brincando.
    Eu também ainda continuo com o Python.

  • Que comentário triste o do neoman!

    Use linguagens mais poderosas , recomendo Java, C/C++, C#. Ruby on Rails é um framawork nao uma linguagem de programacao a sério.

    Onde Java, C/C++ ou C# são mais poderosos que python ou ruby?

    Ora, o texto deixou claro que o Ruby on Rails é um framework, não uma linguagem de programação.

    E não entendi o ser ‘levado a sério’.

    Não tenho nada contra linguagens de tipagem estática, como as que você citou, mas considero linguagens de tipagem dinâmica e forte excelentes para iniciantes.

    E não entendo mesmo onde as linguagens que você citou são mais poderosas que python ou ruby.

  • agaelebe

    Cara,

    Ruby é a linguagem e Rails é o framework. C, C++ e java são linguagens boas para determinadas aplicações. O que podemos afirmar é que usar ruby com um framework como Ajax ou usar Python com Turbo Gears é muito mais produtivo do que usar Java/C# com seus respectivos frameworks.

    Agora, vai de você escolher aquela tecnologia com que você prefere trabalhar. E não custa conhecer um pouquinho de cada delas para saber qual é a melhor para sua aplicação;

    Muito bons os links colocados aqui. Obrigado, Juca!

  • agaelebe

    quer dizer.. Leonardo. Juca é um dos caras dos links :D

  • Pingback: Ruby Brasil - » Leonardo Farias: Apresentando Ruby on Rails()

  • Olá Leo, parabés pelo post, ficou muito bom, só gostaria de fazer um comentário ali ao amigo Charles Babagge, pois onde tem máteria minha ele vai lá e fala a mesma coisa, Charles Babagge você deve sustentar a acusação ou vc não faz a acusação. Simplesmente dizer isso e deixar por isso mesmo é calúnia leviana, molecagem. E na próxima coloca seu nome verdadeiro…

    Abraço

  • Percival

    Muito bom, já foi para meus favoritos…

  • parabens, muito bom

  • Pingback: Urls Sinistras » Blog Archive » Ruby on Rails()

  • Muito bom mesmo, valeu.

    cleucio bento
    http://www.corpofashion.com.br

  • Pingback: Ruby on Rails – Fábio Caparica()

  • Pingback: E agora? O que muda? – Fábio Caparica()

  • Pingback: 30000 laina()