Curso de Ruby on Rails da Marroquim Consultoria

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Curso de Ruby on Rails da Marroquim Consultoria - Presentation Transcript

    1. Ruby on Rails Mário Sérgio Coelho Marroquim [email_address]
    2. Sobre o curso
      • Curso prático para formar profissionais para o mercado que possam fazer a diferença e produzir resultados reais
      • Foco na maior demanda do mercado: aplicações comerciais
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    3. Sobre as aulas
      • Cada aula se dividirá em 3 partes
        • Explicação do assunto
        • Perguntas e respostas
        • Atividades práticas
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    4. Ruby?
      • Surgiu em 1995
      • Criada por Yukihiro Matsumoto, “Matz”
      • Linguagem de programação TOTALMENTE orientada a objetos
      • Linguagem de script interpretada
      • Muito utilizada em scripts para as mais diversas finalidades
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    5. Ruby?
      • Possui sintaxe absurdamente simples
      • É totalmente extensível
      • É suficientemente rápido
      • Possui um sistema centralizado para distribuição de bibliotecas ( gems ), o Ruby Gems
      • Comunidade grande
      • Muita documentação disponível
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    6. Linguagem de programação?
      • Uma linguagem de programação é
        • Um conjunto de instruções de alto nível que o computador vai ter de executar
        • Uma linguagem mais “humana” que deve ser convertida em uma “linguagem de máquina” (linguagem de baixo nível) para ser executada pelo computador
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    7. Como o Ruby funciona?
      • O computador não entende o código-fonte escrito com linguagens de alto nível
      • O computador precisa interpretá-lo e transformá-lo em algo que possa ser executado pelo seu processador
      • Esse processo envolve interpretação do código-fonte
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    8. Como o Ruby funciona?
      • Para cada SO existe um interpretador Ruby específico, capaz de interpretar o código-fonte (“ .rb ”) e executar a aplicação
      • Ruby, portanto, é independente de SO
      • Ruby possui interpretadores para Windows, Linux, MacOS, OS/2, etc
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    9. Orientação a objetos?
      • Atualmente os programas são muito complexos
      • Não dá para escrever todo o código-fonte em um só arquivo
      • Não dá para espalhar o código-fonte entre vários arquivos de forma desorganizada e repetitiva a cada projeto
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    10. Orientação a objetos?
      • É muito mais fácil trabalhar com objetos da vida real para dar instruções ao computador
      • Tudo pode ser convertido em objetos
      • Classes representam um modelo (especificação) para criação de objetos
      • Uma classe define um tipo de objeto
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    11. Orientação a objetos?
      • Um objeto chamado “cachorro” que vem da classe “animal” é diferente de um objeto “gol voyage” criado a partir da classe “carro”
      • O código-fonte fica distribuído em classes diferentes
      • Cada classe reúne atributos e funcionalidades (métodos) específicas
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    12. Orientação a objetos?
      • Classes possuem atributos (estado) e funcionalidades (comportamento)
      • Objetos da mesma classe podem se comportar de maneira diferente caso o valor de seus atributos seja diferente
      • É um padrão para organizar todo o código-fonte em arquivos separados de modo que todos possam entender
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    13. Orientação a objetos? Especificação de uma Conta ATRIBUTOS + COMPORTAMENTO Nome: Mário Saldo: R$ 1.500,00 Nome: Paulo Saldo: R$ 500,00 Nome: Sara Saldo: R$ 5.200,00 © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    14. Orientação a objetos?
      • Objetos ajudam a escrever as instruções para o computador de maneira mais humana e simples
      • Classes representam bibliotecas muito úteis pois encapsulam atributos e comportamentos específicos que podem ser usados por qualquer um!
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    15. Orientação a objetos? © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    16. Orientação a objetos?
      • Checklist
        • Classes
        • Objetos
        • Atributos (estado)
        • Métodos (comportamento)
        • Mensagens e parâmetros
        • Encapsulamento e divisão de interesses
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    17. Ferramentas especiais
      • ruby – interpretador
      • irb – terminal interativo
      • ri – utilitário para ver documentação
      • Só isso mesmo 
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    18. Regras básicas
      • Criação de um objeto
        • objeto = Tipo.new
      • Atribuição de valores
        • variavel = valor
      • Ruby é case sensitive
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    19. Regras básicas
      • Nomes de classes seguem o camel case
        • A nimal, E specialidade M edica
      • Variáveis e métodos seguem outra forma
        • animal, gol_sedan, especialidade_medica
      • Blocos de código começam e terminam com “{” e “}” ou “do ... end”
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    20. Tipos mais comuns
      • Fixnum - 1, 456, -9856
      • Float - 944.44, 12343,3543454
      • Boolean – true ou false
      • Date – representa uma data
      • String – representa um texto qualquer (“..”)
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    21. Mãos na massa!
      • Checklist
        • Hello word!
        • Utilização de variáveis
        • Interpolação de strings
        • Operações matemáticas
        • Constantes
        • Ranges
        • Arrays
        • Símbolos
        • Hashes
        • Procs/lambda
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    22. Mãos na massa!
      • Checklist
        • If, else, unless
        • Métodos
        • Classes
        • Módulos
        • Tratamento de erros
        • Modelagem básica
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    23. Rails?
      • Criado em julho de 2004 por David Heinemeier Hansson, “DHH”
      • Framework fullstack para desenvolvimento web utilizando Ruby
      • Atua em todas as camadas (MVC) de uma aplicação web
      • Implementa a filosofia DRY
      • Utiliza Convention over Configuration
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    24. Rails?
      • Possui suporte completo a diversas tecnologias desde Ajax até Web Services
      • Possui uma comunidade grande e uma enorme quantidade de plugins para todo o tipo de coisa
      • Facilita muito o desenvolvimento de aplicações web reduzindo a quantidade de configurações e dependências necessárias para se iniciar um projeto
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    25. Fullstack?
      • Rails é um pacote completo...
      RUBY + RAILS + APACHE JAVA + HIBERNATE/JPA + SPRING/STRUTS + TOMCAT + APACHE © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    26. Web?
      • Modelo básico de funcionamento de uma aplicação web
      CLIENTE (navegador, celular, etc) SERVIDOR Requisição (request) Resposta (response) © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    27. MVC?
      • Apenas um padrão para dividir as partes (camadas) de uma aplicação
      • Model – Toda a lógica de negócios e interação com as bases de dados
      • Controller – Redireciona o usuário de acordo com o que ele quer, controla acesso a determinados “lugares”, etc
      • View – camada de visão (CSS, HTML, Javascript, flash, etc)
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    28. MVC?
      • Modelo mais elaborado de funcionamento de uma aplicação web
      CLIENTE (navegador, celular, etc) Requisição (request) Resposta (response) C M v © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    29. MVC?
      • MVC by Rails
        • Mantenha o model “gordo”
        • Mantenha a view estúpida
        • “ Seque” os controllers
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    30. Rails?
      • O Rails tem um módulo para cada necessidade
      • Active Record – comunicação com os SGBDs
      • Action Pack
        • Action View – geração de views
        • Action Controller – controle de fluxo
      • Action Mailer – suporte completo a emails
      • Active Support – coisinhas legais
      • Action WebServices – WSDL, SOAP, REST
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    31. Mãos na massa!
      • Checklist (Active Record)
        • Migrations
        • Models
        • Relacionamentos entre models
        • Validações
        • Operações CRUD
        • Finders dinâmicos
        • TDD (Test-Driven Development)
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    32. Mãos na massa!
      • Checklist (Action Pack)
        • Geração de controllers
        • Criação de views
        • Utilização de templates
        • Sessão, autenticação e autorização
        • Ajax!!!
        • Plugins legais
      © 2009 Marroquim Consultoria - www.marroquimconsultoria.com.br
    33. Fim do começo...
      • Ainda há muito o que aprender!
      • http://guias.rubyonrails.pro.br/
      • http://railscasts.com/
      • http://peepcode.com/
      • http://www.rubyinside.com.br/
      • http://www.akitaonrails.com/
      • OBRIGADO!

    + Mário MarroquimMário Marroquim, 6 months ago

    custom

    524 views, 0 favs, 3 embeds more stats

    Curso de Ruby on Rails da Marroquim Consultoria. De more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 524
      • 474 on SlideShare
      • 50 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 12
    Most viewed embeds
    • 43 views on http://www.marroquimconsultoria.com.br
    • 4 views on http://localhost:3000
    • 3 views on http://marroquimconsultoria.com.br

    more

    All embeds
    • 43 views on http://www.marroquimconsultoria.com.br
    • 4 views on http://localhost:3000
    • 3 views on http://marroquimconsultoria.com.br

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories