• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
O que é o ruby on rails?
 

O que é o ruby on rails?

on

  • 691 views

 

Statistics

Views

Total Views
691
Views on SlideShare
691
Embed Views
0

Actions

Likes
0
Downloads
11
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    O que é o ruby on rails? O que é o ruby on rails? Presentation Transcript

    • O que é Ruby on Rails? Braga Geek Nights - Fevereiro 2010 Leonardo Costa email: lcosta [dot] job [at] gmail [dot] comsábado, 26 de Fevereiro/02 de 2011
    • Quem eu sou? • Nome - Leonardo Costa • Trabalho com web a cerca de 11 anos • Comecei a programar para web com Perl, PHP e .net • Estudo Ruby/Rails a cerca de 2 anos e meio • Trabalho diariamente com RubyOnRails acerca 1 anosábado, 26 de Fevereiro/02 de 2011
    • Rubysábado, 26 de Fevereiro/02 de 2011
    • Ruby - a História • 1993: Criado por Yukihiro “Matz” Matsumoto • Mais usada no Japão do que Python • 1995: Primeiro livro em inglês com o titulo Programming Ruby de Dave Thomas • 2004: Levada ao sucesso pelo RubyOnRailssábado, 26 de Fevereiro/02 de 2011
    • Ruby - Características • Sintaxe simples, inspirada por Ada, Eiffel e Perl • Semântica compacta, inspirada por Smalltalk • Todo valor é um objecto • Toda operação em um objecto é um métodosábado, 26 de Fevereiro/02 de 2011
    • Ruby - Características • Todas as classes são abertas • Herança simples e mixins • Closures reais • Garbage collector • Extensões via C • Suporte a quase todos os os Sistemas Operativossábado, 26 de Fevereiro/02 de 2011
    • Railssábado, 26 de Fevereiro/02 de 2011
    • Rails - a História • Criado por David Heinemeier Hansson (DHH) da 37signals em 2004 - www.loudthinking.com • Extraído de um projecto real - Basecamp • Lançamento publico em julho de 2004 • Lançamento da versão 1.0 em dezembro 2005 • Versão actual recomendada para deploy 2.3.4sábado, 26 de Fevereiro/02 de 2011
    • Rails - o que é? • “full stack web framework” • Framework completo para desenvolvimento de aplicativos Web • Pacote MVC (Model-View-Controller) - Action Pack (Action Controller e Action View) - Active Record • Suporte a envio e recebimento de e-mails - Action Mailer • Active Resourcesábado, 26 de Fevereiro/02 de 2011
    • Rails - Filosofia • DRY – “Don’t Repeat Yourself” • Convenção ao invés de Configuração • REST é o melhor modelo para aplicações web • Teste sempre o que fazsábado, 26 de Fevereiro/02 de 2011
    • Rails - Componentes • Action Controller - requisições, sessão, renderização de template e gerenciamento de redirecionamento • Action View - gerência as views (HTML e XML por padrão), gerência a renderização de templates, templates aninhados e parciais, e inclui suporte embutido para AJAX • Active Record - funcionalidade CRUD, capacidade de buscas avançadas, relacionamento entre modelssábado, 26 de Fevereiro/02 de 2011
    • Rails - Componentes • Action Mailer - e processar um e-mail enviar e-mails baseados em templates e receber • Active Resource - framework para serviços web RESTful • Active Support - colecção extensiva de classes utilitárias e extensões da biblioteca padrão do Rubysábado, 26 de Fevereiro/02 de 2011
    • Rails - instalação • Instalar Ruby http://www.ruby-lang.org/en/downloads • Instalar RubyGems (Mac ou Linux) http://rubyforge.org/projects/rubygems • Instalar Rails $ sudo gem install rails • wiki de instalação em http:// wiki.rubyonrails.org/getting-started/ installationsábado, 26 de Fevereiro/02 de 2011
    • Rails - Começo Rápido • Para um começo rápido PRINCIPALMENTE para usuários do Windows temos o RubyStack da BitNami que pode ser encontrado em http:// bitnami.org/stack/rubystack, disponível para Linux, Mac e Windowssábado, 26 de Fevereiro/02 de 2011
    • Rails - primeiro passo • No terminal $ rails blog # base de dados padrão SQLite ou $ rails blog -d mysql ou $ rails blog -d postgresql • Começar -m http://compass-style.org/rails/ $ rails blog uma aplicação via template installersábado, 26 de Fevereiro/02 de 2011
    • sábado, 26 de Fevereiro/02 de 2011
    • • $ cd blog • $ script/generate scaffold Post title:string body:text exists app/models/ exists app/controllers/ exists app/helpers/ create app/views/posts exists app/views/layouts/ exists test/functional/ exists test/unit/ create test/unit/helpers/ exists public/stylesheets/ create app/views/posts/index.html.erb create app/views/posts/show.html.erb create app/views/posts/new.html.erb create app/views/posts/edit.html.erb create app/views/layouts/posts.html.erb create public/stylesheets/scaffold.css create app/controllers/posts_controller.rb create test/functional/posts_controller_test.rb create app/helpers/posts_helper.rb create test/unit/helpers/posts_helper_test.rb route map.resources :posts dependency model exists app/models/ exists test/unit/ exists test/fixtures/ create app/models/post.rb create test/unit/post_test.rb create test/fixtures/posts.yml create db/migrate create db/migrate/20100202165708_create_posts.rbsábado, 26 de Fevereiro/02 de 2011
    • • $ mate db/migrate/20100120165708_create_posts.rb • class CreatePosts < ActiveRecord::Migration def self.up create_table :posts do |t| t.string :title t.text :body t.timestamps # update_at and created_at columns end end def self.down drop_table :posts end endsábado, 26 de Fevereiro/02 de 2011
    • • $ rake db:migrate (in /Users/lcosta/tmp/blog) == CreatePosts: migrating ==================================================== -- create_table(:posts) -> 0.0014s == CreatePosts: migrated (0.0017s) =========================================== • $ script/server => Booting Mongrel => Rails 2.3.4 application starting on http://0.0.0.0:3000 => Call with -d to detach=> Ctrl-C to shutdown serversábado, 26 de Fevereiro/02 de 2011
    • http://0.0.0.0:3000/postssábado, 26 de Fevereiro/02 de 2011
    • http://0.0.0.0:3000/posts/newsábado, 26 de Fevereiro/02 de 2011
    • sábado, 26 de Fevereiro/02 de 2011
    • sábado, 26 de Fevereiro/02 de 2011
    • sábado, 26 de Fevereiro/02 de 2011
    • sábado, 26 de Fevereiro/02 de 2011
    • http://0.0.0.0:3000/posts.xmlsábado, 26 de Fevereiro/02 de 2011
    • sábado, 26 de Fevereiro/02 de 2011
    • sábado, 26 de Fevereiro/02 de 2011
    • Rails - Tools • script/about • script/runner • script/console • script/server • script/dbconsole • script/destroy • e não menos o Rake • script/generate • script/pluginsábado, 26 de Fevereiro/02 de 2011
    • Rails - o Rake • automatizador de tarefas • para ver uma listagem de todas as tarefas: • $ rake -T • rake db:create:all • rake db:migrate • rake db:migrate:redo, rake db:reset rake db:rollback • rake db:migrate:down e rake db:migrate:up • rake doc:app • rake gems, rake gems:install e rake gems:unpack • rake notes | notes:fixme | notes:optimize | notes:todosábado, 26 de Fevereiro/02 de 2011
    • Ruby e Rails - Links • Site oficial do Ruby http://www.ruby-lang.org • Bom lugar para aprender Ruby (Satish Talim) http://rubylearning.com • Site oficial do Rails http://rubyonrails.org • Excelentes guias sobre Rails http://guides.rubyonrails.org e http://guias.rubyonrails.pro.br • Screencasts de alta qualidade sobre Rails http://railscasts.com • O repositório de código open source http://github.com • Getting Real http://gettingreal.37signals.comsábado, 26 de Fevereiro/02 de 2011
    • Perguntas? email: lcosta.job@gmail.com - http://twitter.com/lcostasábado, 26 de Fevereiro/02 de 2011