Conhecendo o Ruby on Rails

  • 956 views
Uploaded on

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

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

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
956
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Conhecendo o  Ruby on Rails Jony dos Santos Kostetzer http://jonysk.net  |  jony@jonysk.net
  • 2. Antes de tudo…  Ruby – Linguagem  Rails – Framework
  • 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. 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. 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. Convention over configuration “Convenção ao invés de configuração”
  • 7. Tradução de convention over configuration para desenvolvedores Menos código Créditos: Júlio Santos Monteiro
  • 8. Tradução de convention over configuration para clientes Menos tempo Créditos: Júlio Santos Monteiro
  • 9. Tradução de convention over configuration para vendedores Maior lucro Créditos: Júlio Santos Monteiro
  • 10. Don’t Repeat Yourself “Fazer uma vez, bem feito, e com testes”
  • 11. Agile Development “Processos iterativos, desenvolvimento incremental, etc”
  • 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. Adaptar‐se à mudança não  pode ser caro! “Que seja feita a vontade do cliente”
  • 14. Adaptar‐se à mudança não  pode ser caro! “Que seja feita a vontade do cliente”
  • 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. MVC no Rails
  • 17. Rails ‐ Componentes  ActiveRecord ‐ ORM  ActiveResource ‐ REST Client  ActionPack   ActionController  ActionView  ActionMailer
  • 18. Helpers  AJAX  Efeitos visuais  Formulários  Assets (imagens, estilos)  Cache  Rotas  + diversos helpers em plugins
  • 19. Demonstração
  • 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. 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. Mercado
  • 23. Empresas BBC Oakley CapGemini NBC BPN Siemens NASA ThoughtWorks Cisco Yahoo! C|Net JohnDeere EA (Electronic Arts) New York Times JP Morgan
  • 24. Virtual Machines ?! “MRI”
  • 25. Deployment  Servidores de aplicação  FastCGI    Mongrel  Thin  Ebb  Passenger (mod_rails – Apache)  Servidores web  Apache  Lighttpd  Nginx
  • 26. Hospedagens
  • 27. Projetos  opensourcerails.com  webdeveloper.econsultant.com/ruby‐rails‐projects‐ sites  rubyonrails.com/applications  workingwithrails.com/browse/sites  rails100.pbwiki.com
  • 28. Rails100
  • 29. Brasil + de 100 empresas brasileiras cadastradas no Working With Rails
  • 30. Mercado  Crescimento na utilização   Demanda por profissionais = + vagas  Offshoring: economia + qualidade = oportunidades  Bons salários  Mercado brasileiro em ascenção
  • 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. Aprendendo Ruby on Rails
  • 33. Migrando
  • 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. 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. Duvidas? jonysk.net |  jony@jonysk.net