Aplicações Web com Ruby on Rails

Jairo Junior
Aug 25, 2017 · 5 min read
Logo do Framework Ruby on rails

Você provavelmente já utilizou aplicativos que foram criados com ruby on rails , como : Basecamp , GitHub , Shopify , Airbnb , Twitch , SoundCloud , Hulu , Zendesk , Square , Groupon , SliderShare. Esses são apenas alguns dos grandes nomes, mas existem literalmente centenas de milhares de aplicativos criados com a estrutura desde seu lançamento em 2005.

O ROR (sigla para ruby on rails) foi criado a partir de um gerenciamento de projetos da empresa Basecamp, sendo mantida até hoje pela mesma empresa e por seu principal criador David heinemeir Hansson, conhecido por DHH.

Sua Primeira versão oficial, o Rails 1.0, foi lançada em dezembro de 2005 e começou a ganhar muita atenção depois que a apple em agosto de 2006 anunciou que a próxima versão de seus Sistema operacional, na época o OSX Leopard, já viria com o Framework instalado.

Top sites developed in Ruby on Rails: Twitter, Shopify, CrunchBase, Bloomberg, Indiegogo.

Com a evolução do desenvolvimento ágil e dos manifestos a serem seguidos pela comunidade, houve um grande hype entorno de estruturas que trabalhassem conforme as métricas estabelecidas pelos agilista. Com isso o rails ganhou muita fama pois uma de suas principais características é proporciona velocidade e praticidade na hora de escrever aplicativos para web ,permitindo que as funcionalidades possam ser implementadas de maneira incremental por conta de seus padrões, tornando-se assim o queridinho das startups no desenvolvimento de MVPs.

Como pilares do Rais estão os conceitos:

Don’t Repeat Yourself (DRY) : O próprio framework incentiva o a adotar padrões de projetos mais adequados para cada funcionalidade partindo de conceitos de Orientação á objetos e a reutilização de código.

Convention over Configuration (CoC) : O rails traz muita facilidade na criação de CRUD e outras funcionalidades como o scaffold (comando para criar CRUDs automaticamente).Tudo se faz com poucas linhas, deixando o código bem legível e enxuto, porem se faz necessário seguir sua estrutura e suas convenções na hora de criar classes e métodos.


Como o Rails Funciona?

O Rails segue o padrão MVC e é escrito utilizando a linguagem Ruby organizado por meio de suas convenções criando assim dinamicamente arquivos HTML, CSS e javascript a partir de componentes, os principais são:

Estrutura minimalista das principais atividades em um estrutura com ROR

Active Record: o M do MVC, é a camada do sistema responsável por representar os dados e a lógica de negocio da aplicação, facilitando a criação e o uso de objetos cujos dados exigem armazenamento persistente em um banco de dados.

Action View: o V do MVC, é o responsável por tratar os pedidos do controller e compilar a resposta nos formatos HTML, CSS e JS.

Action Controller: o C do MVC, é o responsável por dar sentido à solicitação, buscar e salvar os dados de um modelo e usar uma saída em HMLT.

Em geral o Rails é simplesmente um Framework que gera arquivos HTML, CSS e javascript para web além de trabalhar no back-end de aplicações através da linguagem ruby.


Comunidade e suas bibliotecas

Ruby on rails é um projeto open-source e uma das grandes vantagens ao escolhe-lo em seus projetos é sua comunidade que sempre ativa cria melhorias e cresce evoluindo com outras tecnologias, exemplo disso é o assets pipeline e o rails api (funcionalidades que foram implementadas durante o tempo pelo Core do projeto).

Comunidade Ruby on rails Brasil : https://rubyonrailsbrasil.com.br/

Grande parte de seu sucesso vem também de suas famosas libs, as GEMS, que só perdeu a posição de projetos mais commitados do github para os infernos.js da vida.

Hoje ela conta com um site que organiza todas as gems e suas versões alem de toda documentação. Existem bibliotecas para tudo, desde autenticação como login em redes sociais.

Comunidade oficial das bibliotecas do Ruby : https://rubygems.org/


Principais vantagem e Desvantagens de se usar o ROR

As principais vantagens do Ruby on Rails é sua comunidade muito ativa, a fácil manutenção do código e o grande numero de bibliotecas que vieram evoluindo junto com o framework. A principal desvantagem é a hospedagem que em geral é um pouco mais cara do que um PHP, por exemplo, que roda com o Apache. Outro ponto que gera muita polemica é o fato do ROR utilizar a linguagem RUBY que por ser uma linguagem interpretada é um pouco mais lenta e menos performática que o JAVA, por exemplo, que é uma linguagem copilada. Esse caso ficou muito conhecido depois que o Twitter decidiu em meados de 2009 migrar de Ruby para JAVA devido a problemas de performasse, problema esse que hoje a comunidade explora bastante e traz várias saídas como melhora com sistema de cache e utilização de servidores NGINX, mais isso ficara para um próximo post.

Bibliografia:

)
Jairo Junior

Written by

Analista de Informatica, formado em Computação, desenvolvedor freelancer, aluno de data analytics, comunicativo, entusiasta em machine learning e BigData.