Ruby
Grupo
Alan Cardoso
Marcelo Alexandre
Marcelo Oliveira
Nathan Novelli
Wagner Siqueira
Criador
Yukihiro “Matz” Matsumoto
Características
• Interpretada
Características
Linguagem interpretada
Interactive Ruby (irb)
Características
• Interpretada
• Dinâmica
Características
class Professor
def ensina(aluno)
def aluno.escreve
“Sei escrever!"
end
end
end
juca = Aluno.new
juca.resp...
Características
• Interpretada
• Dinâmica
• Tipagem dinâmica
Características
Tipagem dinâmica
a.type
# => <NameError: undefined local variable
or method ‘a’ for main:Object>
a.type
# ...
Características
• Interpretada
• Dinâmica
• Tipagem dinâmica
• Tipagem forte
Características
Tipagem forte
x = “Olá, ”
# => Olá,
y = “Mundo!”
# => Mundo!
x + y
# => Olá, Mundo!
y = 1
# => 1
x + y
# =...
Características
• Interpretada
• Dinâmica
• Tipagem dinâmica
• Tipagem forte
• Orientada a objetos
Características
Orientação a objetos
class Pessoa
attr_acessor :nome, :idade
def initialize(nome, idade)
@nome = nome
@ida...
Características
Orientação a objetos
10.class
# => Fixnum
10.class.superclass
# => Integer
10.class.superclass.superclass
...
Comunidade
Gems
Mais de 57 mil gems!
RubyGems
Documentação
RDoc
ruby-doc.org
Utilização
• Administração de sistemas
Utilização
Administração de sistemas
Utilização
• Administração de sistemas
• Desenvolvimento desktop
Utilização
• APIs gráficas (GTK+, Shoes, etc.)
• IronRuby + .NET
• IronRuby + Mono
• Jruby + Java VM
Desenvolvimento deskt...
Utilização
• Administração de sistemas
• Desenvolvimento desktop
• Desenvolvimento mobile
Utilização
• mruby + MobiRuby (iOS)
• RubyMotion (iOS)
• Rhodes (iOS, Android, Windows
Phone, Symbian e Blackberry)
Desenv...
Utilização
• Administração de sistemas
• Desenvolvimento desktop
• Desenvolvimento mobile
• Desenvolvimento web
Utilização
Desenvolvimento web
Ruby on Rails
Criador
David Heinemeier Hansson
Ruby on Rails
Basecamp
Ruby on Rails
MVC (model-view-controller)
Controller Model
View
DB
Ruby on Rails
Conceitos básicos
rails new <nomedoprojeto>
rails generate model <nome>
rails generate view <nome>
rails gen...
Ruby on Rails
Cases
GitHub
Ruby on Rails
Cases
Hulu
Ruby on Rails
Cases
Scribd
Ruby on Rails
Cases
SlideShare
Ruby on Rails
Cases
Groupon
Ruby on Rails
Cases
Ruby on Rails
Cases
StartupDEV
Ruby on Rails
Show me the code!
Em apenas 10 passos !
Criando uma Aplicação
Exemplo
Ruby on Rails
Requisitos:
• Ruby
• Gem Rails
• Banco de dados (Qualquer tipo)
Ruby on Rails
Passo 1 Criando seu Aplicativo
rails new blog
Gera estrutura de arquivos e diretórios do Rails
Tempo aproxim...
Ruby on Rails
Passo 2 Configurando as Gems
No arquivo Gemfile
Insira o seguinte código
Tempo aproximado: 30 segundos
gem "...
Ruby on Rails
Passo 3 Configurando acesso ao Banco de Dados
Em config/database.yml
Tempo aproximado: 30 segundos
developme...
Ruby on Rails
Passo 4 Instalação das Gems
Instalação e atualização de todas as Gems do Gemfile
Tempo aproximado: 20 segund...
Ruby on Rails
Passo 5 Instalação do Bootstrap
Tempo aproximado: 20 segundos
Instalação do Twitter Bootstrap na sua aplicaç...
Ruby on Rails
Passo 6 Criando um modelo com Scaffold Generator
Exemplo de Modelo para Blog - seria um Post
Tempo aproximad...
Ruby on Rails
Passo 7 Criando o Tabelas no Banco de Dados
Para criar o Banco de Dados definido em database.yml
Tempo aprox...
Ruby on Rails
Passo 8 Executando servidor em Localhost
O servidor padrão do Rails é o WEBrick
Tempo aproximado: 25 segundo...
Ruby on Rails
Passo 9 Aplicando Layout Bootstrap ao Modelo
Com um comando o Bootstrap e o Rails geram o estilo
Bootstrap p...
Ruby on Rails
Passo 10 Aplicando um Layout Bootstrap ao Aplicativo
Assim como no Modelo o Bootstrap e o Rails geram o
Layo...
Ruby on Rails
1 - Criamos a aplicação (rails new blog)
2 - Adicionamos as Gems ao Gemfile
3 - Configuramos o acesso ao ban...
Ruby on Rails
Tempo de desenvolvimento estimado:
240 segundos – Aprox. 5 minutos
Linhas escritas:
25 linhas
é um Framework...
Perguntas
?
?
?
?
?
?
Ruby
http://www.ruby.org
Próximos SlideShares
Carregando em…5
×

Introdução á linguagem Ruby com aplicativo em Rails

337 visualizações

Publicada em

Apresentação sobre a linguagem de programação Ruby, introdução á linguagem suas vantagens e principais características.
A apresentação inclui casos de uso de sucesso e exemplos de código com a criação de um aplicativo usando o framework Ruby on Rails e Twitter Bootstrap.

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
337
No SlideShare
0
A partir de incorporações
0
Número de incorporações
5
Ações
Compartilhamentos
0
Downloads
7
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Introdução á linguagem Ruby com aplicativo em Rails

  1. 1. Ruby
  2. 2. Grupo Alan Cardoso Marcelo Alexandre Marcelo Oliveira Nathan Novelli Wagner Siqueira
  3. 3. Criador Yukihiro “Matz” Matsumoto
  4. 4. Características • Interpretada
  5. 5. Características Linguagem interpretada Interactive Ruby (irb)
  6. 6. Características • Interpretada • Dinâmica
  7. 7. Características class Professor def ensina(aluno) def aluno.escreve “Sei escrever!" end end end juca = Aluno.new juca.respond_to? :escreve # => false professor = Professor.new professor.ensina juca juca.escreve # => “Sei escreve!” Linguagem dinâmica Metaprogramação class Aluno # Não sabe nada end
  8. 8. Características • Interpretada • Dinâmica • Tipagem dinâmica
  9. 9. Características Tipagem dinâmica a.type # => <NameError: undefined local variable or method ‘a’ for main:Object> a.type # => Fixnum a = “Olá, mundo!” # => Olá, mundo a.type # => String a = 1 # => 1 Duck typing
  10. 10. Características • Interpretada • Dinâmica • Tipagem dinâmica • Tipagem forte
  11. 11. Características Tipagem forte x = “Olá, ” # => Olá, y = “Mundo!” # => Mundo! x + y # => Olá, Mundo! y = 1 # => 1 x + y # => TypeError: no implicit conversion of Fixnum into String
  12. 12. Características • Interpretada • Dinâmica • Tipagem dinâmica • Tipagem forte • Orientada a objetos
  13. 13. Características Orientação a objetos class Pessoa attr_acessor :nome, :idade def initialize(nome, idade) @nome = nome @idade = idade end end class Aluno < Pessoa attr_acessor :cgu def estudar # estudar end end p = Pessoa.new(“João”, 18) a = Aluno.new a.estudar
  14. 14. Características Orientação a objetos 10.class # => Fixnum 10.class.superclass # => Integer 10.class.superclass.superclass # => Numeric 10.class.superclass.superclass.superclass # => Object Em Ruby tudo é objeto!
  15. 15. Comunidade
  16. 16. Gems Mais de 57 mil gems! RubyGems
  17. 17. Documentação RDoc ruby-doc.org
  18. 18. Utilização • Administração de sistemas
  19. 19. Utilização Administração de sistemas
  20. 20. Utilização • Administração de sistemas • Desenvolvimento desktop
  21. 21. Utilização • APIs gráficas (GTK+, Shoes, etc.) • IronRuby + .NET • IronRuby + Mono • Jruby + Java VM Desenvolvimento desktop
  22. 22. Utilização • Administração de sistemas • Desenvolvimento desktop • Desenvolvimento mobile
  23. 23. Utilização • mruby + MobiRuby (iOS) • RubyMotion (iOS) • Rhodes (iOS, Android, Windows Phone, Symbian e Blackberry) Desenvolvimento mobile
  24. 24. Utilização • Administração de sistemas • Desenvolvimento desktop • Desenvolvimento mobile • Desenvolvimento web
  25. 25. Utilização Desenvolvimento web
  26. 26. Ruby on Rails Criador David Heinemeier Hansson
  27. 27. Ruby on Rails Basecamp
  28. 28. Ruby on Rails MVC (model-view-controller) Controller Model View DB
  29. 29. Ruby on Rails Conceitos básicos rails new <nomedoprojeto> rails generate model <nome> rails generate view <nome> rails generate controller <nome> rails generate migration <nome>
  30. 30. Ruby on Rails Cases GitHub
  31. 31. Ruby on Rails Cases Hulu
  32. 32. Ruby on Rails Cases Scribd
  33. 33. Ruby on Rails Cases SlideShare
  34. 34. Ruby on Rails Cases Groupon
  35. 35. Ruby on Rails Cases
  36. 36. Ruby on Rails Cases StartupDEV
  37. 37. Ruby on Rails Show me the code!
  38. 38. Em apenas 10 passos ! Criando uma Aplicação Exemplo
  39. 39. Ruby on Rails Requisitos: • Ruby • Gem Rails • Banco de dados (Qualquer tipo)
  40. 40. Ruby on Rails Passo 1 Criando seu Aplicativo rails new blog Gera estrutura de arquivos e diretórios do Rails Tempo aproximado: 15 segundos Gemfile README.rdoc app config.ru doc log script tmp Gemfile.lock Rakefile config db lib public test vendor
  41. 41. Ruby on Rails Passo 2 Configurando as Gems No arquivo Gemfile Insira o seguinte código Tempo aproximado: 30 segundos gem "mysql2" #Gem do Banco de Dados gem "twitter-bootstrap-rails" #Gem do Twitter Bootstrap gem "less-rails" #Gem necessária para o Bootstrap gem "therubyracer" #Gem necessária para o Bootstrap
  42. 42. Ruby on Rails Passo 3 Configurando acesso ao Banco de Dados Em config/database.yml Tempo aproximado: 30 segundos development: adapter: mysql2 #Banco de dados, requer Gem instalado encoding: utf8 reconnect: false database: blog_development pool: 5 username: root password: socket: /tmp/mysql.sock
  43. 43. Ruby on Rails Passo 4 Instalação das Gems Instalação e atualização de todas as Gems do Gemfile Tempo aproximado: 20 segundos bundle install
  44. 44. Ruby on Rails Passo 5 Instalação do Bootstrap Tempo aproximado: 20 segundos Instalação do Twitter Bootstrap na sua aplicação rails g bootstrap:install
  45. 45. Ruby on Rails Passo 6 Criando um modelo com Scaffold Generator Exemplo de Modelo para Blog - seria um Post Tempo aproximado: 30 segundos rails g scaffold Post title:string content:text --skip-stylesheets Exemplo de Modelo para Loja - seria um Produto rails g scaffold Product name:string price:decimal description:text --skip-stylesheets
  46. 46. Ruby on Rails Passo 7 Criando o Tabelas no Banco de Dados Para criar o Banco de Dados definido em database.yml Tempo aproximado: 30 segundos rake db:create Para criar as tabelas do Modelo Post que gerou rake db:migrate
  47. 47. Ruby on Rails Passo 8 Executando servidor em Localhost O servidor padrão do Rails é o WEBrick Tempo aproximado: 25 segundos Ele é uma Gem padrão que já está instalada, o bundle install o instalou. Para executar o servidor local basta o comando: rails s ou se preferir rails server
  48. 48. Ruby on Rails Passo 9 Aplicando Layout Bootstrap ao Modelo Com um comando o Bootstrap e o Rails geram o estilo Bootstrap para seu Modelo. Tempo aproximado: 20 segundos rails g bootstrap:themed posts -f Caso tivessemos feito o modelo Products: rails g bootstrap:themed products -f
  49. 49. Ruby on Rails Passo 10 Aplicando um Layout Bootstrap ao Aplicativo Assim como no Modelo o Bootstrap e o Rails geram o Layout para você em um único comando: Tempo aproximado: 20 segundos rails g bootstrap:layout application fluid Ou se preferir outro estilo: rails g bootstrap:layout application fixed
  50. 50. Ruby on Rails 1 - Criamos a aplicação (rails new blog) 2 - Adicionamos as Gems ao Gemfile 3 - Configuramos o acesso ao banco de dados 4 - Instalamos e atualizamos as Gems da aplicação 5 - Instalamos o Bootstrap 6 - Geramos um Scaffold de um Post 7 - Criamos o banco de dados, e logo após as tabelas 8 - Ligamos o servidor do Rails para testar 9 - Aplicamos um layout ao modelo Post 10 - Aplicamos um layout do Bootstrap ao aplicativo O que foi feito ?
  51. 51. Ruby on Rails Tempo de desenvolvimento estimado: 240 segundos – Aprox. 5 minutos Linhas escritas: 25 linhas é um Framework escrito na linguagem Ruby de Desenvolvimento Ágil para WEB
  52. 52. Perguntas ? ? ? ? ? ?
  53. 53. Ruby http://www.ruby.org

×