Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Sinatra - Desenvolver pode ser mais fácil que c...

Sinatra - Desenvolver pode ser mais fácil que cantar.

I've made a Sinatra Workshop on Universidade Feevale, to show students and the community how web development can be easy.
Those slides were used to give a small base for those who weren't familiar with the Ruby lang, Web development itself, and the Sinatra framework.

More Decks by Gregório Chalinski Kusowski

Other Decks in Programming

Transcript

  1. Gregório Chalinski Kusowski • Acadêmico de Ciencia da Computação •

    Ruby - Ruby on Rails • Java - J2EE e Android • GETMove • Fã de Automação de Tarefas
  2. Ruby - Linguagem • Dinâmica • Orientada a objetos •

    Não-tipada • Open-source • Sintaxe simples • Aborda o paradigma funcional
  3. Sinatra - Framework • Voltado para pequenas aplicações web •

    Simplicidade • Elegância • Velocidade (processamento) • Rapidez (desenvolvimento)
  4. Ruby em 5 minutos • Variáveis • Métodos • Classes

    • Tipos • Blocos • História • Instalação • Plataformas • Comunidade
  5. Ruby em 5 minutos • Variáveis • Métodos • Classes

    • Tipos • Blocos • História • Instalação • Plataformas • Comunidade Sem tempo!
  6. Sinatra “Sinatra é uma DSL para criar rapidamente aplicações web

    em Ruby com o mínimo esforço.” DSL: Domain Specific Language.
  7. Rotas Uma rota em sinatra, é definida a partir de

    um método e uma URL: get '/' do "Olá, mundo!" end
  8. Views É possível utilizar diversas engines para templates: <html> <!--

    :) --> </html> Aplicação Template( ./views/hello.erb ) get '/' do erb :hello end
  9. Erb <html> <head> <meta http−equiv="content−type" content="text/html; charset=utf−8" /> <title>Hello</title> </head>

    <body> <h1>Oi, <%= nome %></h1> </body> </html> Template( ./views/hello.erb ) erb :hello, :locals => { :nome => 'Gregório' }
  10. Erb <html> <head> <meta http−equiv="content−type" content="text/html; charset=utf−8" /> <title>Hello</title> </head>

    <body> <h1>Oi, <%= nome %></h1> </body> </html> Template( ./views/hello.erb ) erb :arquivo, :locals => { :nome => 'Gregório' } Gregório