Sinatra em 9 linhas de código

17 November 2009

Serviços como o TinyURL tem se proliferado na web, principalmente por causa do Twitter que limita as menssagens em 140 caracteres. A aplicação que será descrita agora não tem o objetivo de ser como o TinyURL e sim utilizar essa idéia diretamente na URL, algo como: http://johntopley.com/post/#{params[:token]} Sinatra é um framework ruby para desenvolvimento de aplicações web. Na verdade ele é um micro-framework interessante quando Rails é algo muito grande para sua necessidade (o que não quer dizer que não seja podereso). Uma de suas vantagens, é que o fato de ser extremamente leve facilita um número alto de requests por segundo. Outro aspecto positivo é que o Sinatra suporta o Rack. Ná prática isso quer dizer que qualquer servidor que suporte Rack pode rodar seu projeto, além de te dar a possibilidade de ter sua aplicação dividida em pequenas outras, por exemplo uma parte Sinatra e outra Rails.
A parte Rails
A parte Rails da aplicação contém um model chamado Post, que contém a conversão basa Base 36
Sinatra App
O Sinatra não padroniza uma estrutura de diretórios então é possível estruturá-la como quiser. Sinatra não é um framework MVC Sinatra fornece uma DSL para criação de aplicações web. No código acima existem dois blocos manipuladores esperando por metodos HTTP GET. O primeiro redireciona para o site jtblog.me. O segundo interpola um token para ser passado para a aplicaço Rails. Sete linhas de código até aqui, as duas linhas restantes são referentes ao arquivo config.ru e são utilizadas para subir a aplicação: Esse post é uma tradução curta do John Topley - Write A Web App In Nine Lines Of Code With Sinatra O site pode ser visto em :jtblog.me
comments powered by Disqus