O framework Rails vem ganhando cada vez mais adeptos, muitos programadores estão estudando ruby para começar os seus projetos em Rails (eu fui um deles), a verdade é que realmente existe um hype em cima deste framework, mas esse hype é realmente merecido? o que este framework tem de especial?
Muitas empresas, sejam elas start-ups ou empresas consolidadas já viram que Ruby On Rails é uma das melhores opções para um desenvolvimento web rápido e eficiente.
O Ruby On Rails, ou simplesmente Rails, é um framework web para a linguagem ruby, open-source, escalável e que implementa a arquitetura MVC de desenvolvimento, fora isso ainda tem o fato de ter uma comunidade altamente ativa.
Algumas características do ROR que chamam a atenção são:
Framework Maduro
O Rails surgiu em 2003 apresentando várias API’s que tornavam o desenvolvimento mais ágil, fácil e gerenciável, inclusive ágil é uma das palavras chaves no Rails, já que ele foi construído com base em uma metodologia ágil, alguns exemplos de características interessantes do rails são a proteção CSRF (Cross Site Request Forgery), você não precisava fazer absolutamente nada para adicionar o CSRF… temos também o Active Record do Rails que é uma característica extremamente poderosa para construir modelos de dados.
Velocidade de desenvolvimento
Abaixo cito algumas características do Rails que aceleram o desenvolvimento.
Generators/Scaffolding:
Com Rails a prototipação é muito rápida, o scaffold do Rails gera um ponto de partida que te permite de cara listar, adicionar, remover e editar dados.
Gems/Plugins:
As Gems do ruby, são pequenos “programas” que podem ser usadas dentro de um script ruby ou uma aplicação, os plugins do Rails dão a flexibilidade de alterar qualquer parte do Rails, incluindo os Generators, tarefas do rake e testes/specs.
ORM Active Record:
ORM (Object-Relational Mapping) em português significa mapeamento objeto relacional, é uma técnica que conecta os objetos de uma aplicação com as tabelas de um banco relacional.
Active record é um padrão arquitetural que também é encontrado no Ruby On Rails que armazena os seus dados em bancos de dados relacionais, um princípio chave do Rails é o COC (Convention Over Configuration) ou simplesmente Convenção sobre a Configuração, em outras palavras, seguindo algumas convenções de nomes de tabelas e classes, o programador não vai precisar perder tempo configurando arquivos, seguindo a convenção do Rails muita coisa vai ser gerada automaticamente.
Ferramentas Integradas de testes:
O Rails foi desenvolvido com um bom foco em testes, e tem uma boa suíte embutida no framework, criar testes com Rails se torna uma coisa fácil, já que ele vai automaticamente criando esqueletos dos testes enquando você cria suas Views e Controllers.
Algumas dessas ferramentas são: RSpec, Cucumber, Test Unit e Shoulda.
Controle de versão
Existem vários controles de versão no mercado (inclusive eu já falei sobre alguns aqui no blog), o que está bombando no momento é o GIT, e você acha muita coisa em Rails no GitHub, o GIT com certeza é a melhor escolha em controle de versão para se trabalhar com Rails.
Em suma, o Ruby On Rails é um Framework Web que na minha humilde opinião merece ser estudado, para aprendizado eu recomendo estudar primeiro o Ruby, alguns livros muito bons são o Programming Ruby (Inglês) e o Ruby: Aprenda a Programar se você não estiver a fim de gastar, recomendo o ebook 0800 Conhecendo Ruby.
Depois que você já achar que está legal em Ruby, a minha recomendação de livros para Rails são: Agile Web Developmento With Rails 4 (Inglês) e o Ruby On Rails da casa do código.
Que tal começar os estudos e virar um Railer você também?