Bootcamp de Rails - CaquiCoders Meetup

Bootcamp de Rails - CaquiCoders Meetup

Uma introdução sobre a arquitetura do Rails, com um mini-app de exemplo.

583e920a7e9238a1c21e923025f8f641?s=128

Elaine Naomi

May 19, 2018
Tweet

Transcript

  1. welcome to Ruby on Rails

  2. Olar :)

  3. Elaine Naomi Watanabe Full-stack Developer (Plataformatec) Mestre em Ciência da

    Computação (USP) github.com/elainenaomi @elaine_nw
  4. Por que Rails?

  5. David Heinemeier Hansson

  6. David Heinemeier Hansson

  7. DHH

  8. Framework extraído de uma aplicação real

  9. Convenção sobre configuração DRY (Don't repeat yourself)

  10. Objetivo:

  11. Objetivo: Simplificar a vida

  12. Por onde começar?

  13. MVC

  14. View Model Controller apresentação intermediador dados + lógica de negócio

  15. Vamos ver isso no Rails

  16. None
  17. URL localhost:3000/notes resposta esperada

  18. URL localhost:3000/notes GET /notes http

  19. get '/notes', to: 'notes#index' config/routes.rb GET /notes

  20. controllers/notes_controller.rb get '/notes', to: 'notes#index' class NotesController < ApplicationController def

    index @notes = Note.all end end
  21. controllers/notes_controller.rb get '/notes', to: 'notes#index' class NotesController < ApplicationController def

    index @notes = Note.all end end
  22. controllers/notes_controller.rb get '/notes', to: 'notes#index' class NotesController < ApplicationController def

    index @notes = Note.all end end
  23. class Note < ApplicationRecord end models/note.rb

  24. create_table :notes do |t| t.string :content t.timestamps end banco de

    dados*
  25. class Note < ApplicationRecord end models/note.rb

  26. class NotesController < ApplicationController def index @notes = Note.all end

    end
  27. <ul> <% @notes.each do |note| %> <li><%= note.content %></li> <%

    end %> </ul> views/notes/index.html.erb
  28. class NotesController < ApplicationController def index @notes = Note.all end

    end
  29. URL localhost:3000 navegador • Nota 1 • Nota 2 •

    Nota 3
  30. None
  31. CRUD on Rails

  32. HTTP methods GET READ POST CREATE PUT /PATCH UPDATE DELETE

    DESTROY
  33. resource: Notes /notes GET /notes/1 GET /notes/new GET /notes/1/edit GET

    POST PUT/ PATCH DELETE #index #show #new #edit #create #update #destroy
  34. E na prática, como é criar uma app?

  35. github.com/elainenaomi/hello-rails

  36. Quer saber mais?

  37. Documentação do Rails http://guides.rubyonrails.org/ Ruby on Rails: coloque sua aplicação

    web nos trilhos Vinícius Baggio Fuentes Cucumber e RSpec: Construa aplicações Ruby com testes e especificações Hugo Baraúna Tutoriais em português do RailsGirls http://guides.railsgirls.com/guides-ptbr/ Guidelines da Plataformatec http://guidelines.plataformatec.com.br/