Desenvolver software é uma tarefa árdua e ter clientes é um mal necessário, muitas vezes. Em quase todos os programadores web existe pelo menos uma história de um péssimo cliente para contar. E se eu vos disser que existe uma forma de:
- Programar menos e de forma mais limpa
- Escrever menos (ou mesmo zero) SQL,
- Obter melhores resultados e
- Atenuar o atrito entre programador e cliente?
Apresento-vos o Ruby on Rails.
O Rails (RoR) é uma plataforma escrita em Ruby que aumenta o potencial para a web. Nomeadamente, a sua estrutura em MVC, orientada a uma base de dados relacional (sim, pode-se escolher a que se quiser) e envolvida por uma comunidade open-source que já contribui desde 2005 fazem dele a escolha quando se pensa em construir uma aplicação para a web.
Vantagens
- Com o MVC, a lógica do negócio é totalmente separada da apresentação, ou seja: programação dum lado, design através de HTML / CSS do outro.
- Sendo uma framework, já vem equipada com um conjunto de funções que nos permitem concentrar na lógica da aplicação ao invés de nos preocuparmos com pormenores técnicos, como ligação à base de dados, chamada de templates, validações, tudo o que conseguirem imaginar que não faça parte de um determinado negócio. O RoR já vem preparado para suprir toda a monotonia da programação.
- Sendo que o RoR permite-nos concentrar no negócio, o código é quase todo igual, o que permite a melhor análise e manutenção do código, ao cúmulo do impacto de se trocar de pessoal a meio do projecto ser mínimo, sendo apenas necessário conhecer o negócio e não a maneira como se o implementou.
- Ruby é uma linguagem fresca e inovadora com sintaxe muito mais natural e simples de absorver, que torna o código mais pequeno, mais limpo e, ao mesmo tempo, mais legível.
- O RoR vem com uma suite de testes incluída. Desta forma, a maior parte dos testes unitários já vem preparada e pronta para usar.
- A comunidade é enorme e contribui de forma exemplar. Existem dezenas de screencasts, centenas senão milhares de blogs e milhões de programadores prontos a ajudar quem está a aprender. Existem plugins para tudo e mais alguma coisa.
- A manutenção desses plugins ou gems é feita com o RubyGems, ou seja, instalar uma gem é só escrever na linha de comandos: gem install nome_da_gem.
Desvantagens
- Sendo o Ruby uma linguagem nova para muitos, a curva de aprendizagem existe e pode ser agreste para alguns. Muitas vezes a malta desmotiva por causa disto. Se for o teu caso, o meu conselho será: não desistas. Vale MESMO a pena.
- A plataforma foi concebida com o propósito de criar algo de raiz e não como um back-end para outras aplicações já existentes. Quando muito, outras aplicações poderão basear-se numa de RoR.
Requisitos
Para usar o RoR é necessário instalar a linguagem Ruby e o gestor de gems, ou pacotes Ruby, — RubyGems. Depois de instalados, recomenda-se actualizar o RubyGems e instalar as gems do Rails.
sudo gem update --system
sudo gem install rails --include-dependencies
Como criar a primeira aplicação em RoR
Basta ir à linha de comandos e escrever:
rails minha_aplicação
Para correr a aplicação basta ligar o servidor com:
./script/server
Isto corre uma instância de WEBrick ou Mongrel (dependendo se tiverem a gem mongrel instalada ou não), o servidor da nossa aplicação Rails.
Recursos
- Google groups: ruby-pt, ruby-on-rails_pt
- O meu novo screencast de Ruby on Rails, todo em português em http://jose-mota.net
- O screencast em inglês do Ryan Bates em http://railscasts.com
- #rubyonrails no IRC — irc.freenode.net
- Google (sim eu uso-o muito!)
- Livros. O melhor livro para começar é o Agile Web Development with Ruby on Rails. Há mais no resto da Pragmatic Bookshelf e também na Amazon.
Se quiserem saber mais que eu me possa ter esquecido, mandem-me um email, terei o maior gosto em ajudar.
Eu queria isso para o Windows, mas pelo que vi não existe uma versão nativa.
@João José
Tenta utilizar o Instant Rails.
😛
@cenourinha
Obrigado, vou começar a “cultivar” o meu interesse! 😀
Os links para o Google groups estão errados.
é /group/ e não /groups/