Conhecendo o Ruby on Rails

1,203 views

Published on

Palestra ministrada em Porto Alegre, abordando conceitos, técnicas e análise de mercado para Ruby on Rails.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,203
On SlideShare
0
From Embeds
0
Number of Embeds
38
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Conhecendo o Ruby on Rails

  1. 1. Conhecendo o  Ruby on Rails Jony dos Santos Kostetzer http://jonysk.net  |  jony@jonysk.net
  2. 2. Antes de tudo…  Ruby – Linguagem  Rails – Framework
  3. 3. Ruby (visão geral)  Criada em 1993 por Yukihiro “Matz” Matsumoto   Inspirada em Perl, Smalltalk, Ada, Eiffel, Lisp  Tudo é objeto e retona um valor  Tipagem dinâmica e forte  Classes abertas  Uso Intensivo de blocos  Meta‐programação / geração de código em runtime  Simplicidade, elegância  Codifique menos, faça mais = Produtividade
  4. 4. Rails  Framework (template) para aplicações web  Criado em 2004 por David Heinemeier Hansson  Extraído de uma aplicação real – Basecamp  37Signals  Open Source
  5. 5. Por que Rails?  Vantagem principal: RUBY  Simples e eficiente ‐ focado em resolver problemas reais  Lei de Pareto ‐ 80/20  AGILIDADE  Provê o essencial – extensível por plugins  Curva de aprendizado: você já inicia em uma arquitetura sólida.  Comunidade extremamente ativa e vibrante  PADRÕES E CONVENÇÕES 
  6. 6. Convention over configuration “Convenção ao invés de configuração”
  7. 7. Tradução de convention over configuration para desenvolvedores Menos código Créditos: Júlio Santos Monteiro
  8. 8. Tradução de convention over configuration para clientes Menos tempo Créditos: Júlio Santos Monteiro
  9. 9. Tradução de convention over configuration para vendedores Maior lucro Créditos: Júlio Santos Monteiro
  10. 10. Don’t Repeat Yourself “Fazer uma vez, bem feito, e com testes”
  11. 11. Agile Development “Processos iterativos, desenvolvimento incremental, etc”
  12. 12. Manifesto ágil  Individuals and interactions over processes and tools  Working software over comprehensive documentation  Customer collaboration over contract negotiation  Responding to change over following a plain 
  13. 13. Adaptar‐se à mudança não  pode ser caro! “Que seja feita a vontade do cliente”
  14. 14. Adaptar‐se à mudança não  pode ser caro! “Que seja feita a vontade do cliente”
  15. 15. Convenções ‐ MVC  Divisão em camadas: o velho e onipresente “dividir  para conquistar”  Model (Modelos) – Camada de regras de negócio  Views – Camada de apresentação (qualquer formato)    Controller – Articulação entre models & views –  interpreta solicitação e invoca relacionados 
  16. 16. MVC no Rails
  17. 17. Rails ‐ Componentes  ActiveRecord ‐ ORM  ActiveResource ‐ REST Client  ActionPack   ActionController  ActionView  ActionMailer
  18. 18. Helpers  AJAX  Efeitos visuais  Formulários  Assets (imagens, estilos)  Cache  Rotas  + diversos helpers em plugins
  19. 19. Demonstração
  20. 20. Convenções ‐ REST Exibir/buscar Criar Alterar Remover REST/HTTP GET POST PUT DELETE Rails  (actions) show create update destroy SQL select insert update delete
  21. 21. Testes  Sofware x Acupuntura  Diversos “sabores” e um objetivo.  TestUnit  Shoulda  RSpec (User stories, Webrat, etc)  Plugins para integração com Selenium, Watir , entre  outros.
  22. 22. Mercado
  23. 23. Empresas BBC Oakley CapGemini NBC BPN Siemens NASA ThoughtWorks Cisco Yahoo! C|Net JohnDeere EA (Electronic Arts) New York Times JP Morgan
  24. 24. Virtual Machines ?! “MRI”
  25. 25. Deployment  Servidores de aplicação  FastCGI    Mongrel  Thin  Ebb  Passenger (mod_rails – Apache)  Servidores web  Apache  Lighttpd  Nginx
  26. 26. Hospedagens
  27. 27. Projetos  opensourcerails.com  webdeveloper.econsultant.com/ruby‐rails‐projects‐ sites  rubyonrails.com/applications  workingwithrails.com/browse/sites  rails100.pbwiki.com
  28. 28. Rails100
  29. 29. Brasil + de 100 empresas brasileiras cadastradas no Working With Rails
  30. 30. Mercado  Crescimento na utilização   Demanda por profissionais = + vagas  Offshoring: economia + qualidade = oportunidades  Bons salários  Mercado brasileiro em ascenção
  31. 31. Utilização ‐ WWR 1. Estados Unidos – 3018 2. Inglaterra – 553 3. Brasil – 458 4. Índia – 415 5. Alemanha – 344 • Usuários registrados no Working with Rails ‐ 11635   (até 08/06/2008)
  32. 32. Aprendendo Ruby on Rails
  33. 33. Migrando
  34. 34. Mais informações  rubyonrails.pro.br e rubyonrails.com   Podcasts  Apresentações  Informações gerais    akitaonrails.com.br  Novidades e discussões em geral  nomedojogo.com  Novidades do Rails (Edge Rails)  Google groups: rails‐br
  35. 35. Formação Desenvolvedor Web com  Ruby on Rails • Linguagem SQL padrão ANSI – 20hrs • Introdução à linguagem Ruby – 20hrs • Ruby on Rails prático – 40hrs Próxima turma aos sábados em São Leopoldo! www.unisinos.br/institutoinf  institutoinf@unisinos.br  Fone: (51) 3328‐ 2221 MATRICULAS ABERTAS!
  36. 36. Duvidas? jonysk.net |  jony@jonysk.net

×