SlideShare uma empresa Scribd logo
1 de 13
Linguagem de programação Ruby
História
Yukihiro Matsumoto 24 de fevereiro de 1993
O Ruby é uma linguagem com um cuidadoso equilíbrio. O seu criador, Yukihiro
“Matz” Matsumoto, uniu partes das suas linguagens favoritas (Perl, Smalltalk,
Eiffel, Ada e lisp)
julho de 2004
Áreas de atuação
Tipos de dados
• Integer é uma classe que representa números inteiros
• Fixnum representa números inteiros de precisão fixa
• Bignum representa números inteiros de precisão infinita, dependente
apenas da memória disponível
• Float é uma classe que representa números de ponto flutuante
• Array [4, 'azul', :termometro]
• Hash representa um vetor associativo
{:controller => 'user', :action => 'index'}
Tipos Primitivos
Tudo em Ruby é um objeto e não existem tipos primitivos. Isso significa
que até uma variável que armazene um valor inteiro é um objeto
Estruturas de controle
• If
puts "Informe a sua idade"
idade = gets.to_i
if idade < 0
puts "essa não é uma idade válida"
end
• Else
puts "Informe a sua idade"
idade = gets.to_i
if idade < 0
puts "essa não é uma idade válida"
else
puts "essa é uma idade válida"
end
• Elsif
puts "Informe a sua idade"
idade = gets.to_i
if idade >= 0 and idade < 18
puts "ops! você não tem acesso a esse conteúdo“
elsif idade >= 18
puts "Olá! seja bem vindo, visitante!“
else
puts "Essa não é uma idade válida“
end
• Unless
x = 10
unless x > 15
puts "x é menor ou igual a 15“
else
puts "x é maior que 15“
end
Saída x é menor ou igual a 15
• Case
puts "Informe sua idade"
idade = gets.to_i
case idade
when 0..12
puts "você é uma criança"
when 13..17
puts "você é um adolescente“
else
puts "você é um adulto“
end
Estruturas de repetição
• While
while [codicao] do
# operação a ser repetida aqui
end
contador = 0
while contador <= 10 do
print "#{contador}, "
contador += 1
end
Saída 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
• Until
until [condicao] do
# operação a ser repetida aqui
end
contador = 10
until contador == 0 do
print "#{contador}, "
contador -= 1
end
Saída 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,
• For
for [elemento] in [elementos_a_serem_percorridos] do
end
for contador in 0..10 do
print #{contador}, "
end
Saída 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
Ambientes de desenvolvimento
•
eclipse.org/downloads
https://www.jetbrains.com/ruby/
https://www.sublimetext.com/3
http://brackets.io/
Principais ferramentas
Ruby: No Windows, começamos com a linguagem. Para instalar você precisará entrar no site
http://www.rubyinstaller.org/downloads/
- Td/Tk support: fornece ao Ruby uma interface gráfica para usuário (GUI = Graphical User
Interface);
- Add Ruby executables to your PATH: adiciona-se o ruby como executável;
- Associate .rb and .rbw with this Ruby installation: arquivos com tal formato serão associados ao
ruby;
Após o término, entre no command prompt(Iniciar > cmd) e digite o seguinte código:
ruby --version
A reposta deve ser: ruby 2.0.0p481 e outros dados que dependem de atualizações e horários de
instalação.
Rails: Como Ruby 2.0 conta com RubyGems, basta atualizarmos com o comando:
gem update -system
Para instalar o Rails, o comando gem pode demorar um pouco, então digite novamente no cmd:
gem install rails
Para checar:
rails -v
Fim...
Obrigado pela sua atenção
Equipe:
Alisson Santos
Anderson Pereira
Gilvan Gomes
Herverson Sousa

Mais conteúdo relacionado

Semelhante a Linguagem Ruby em 40

Ruby - Criando código para máquinas e humanos
Ruby - Criando código para máquinas e humanosRuby - Criando código para máquinas e humanos
Ruby - Criando código para máquinas e humanosGregorio Kusowski
 
Minicurso de Rails - WTISC 2014
Minicurso de Rails - WTISC 2014Minicurso de Rails - WTISC 2014
Minicurso de Rails - WTISC 2014Zarathon Maia
 
Ruby on rails gds 2011
Ruby on rails   gds 2011Ruby on rails   gds 2011
Ruby on rails gds 2011JogosUnisinos
 
Ruby para programadores PHP
Ruby para programadores PHPRuby para programadores PHP
Ruby para programadores PHPJuan Maiz
 
Ruby para-programadores-php
Ruby para-programadores-phpRuby para-programadores-php
Ruby para-programadores-phpJuan Maiz
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosMario Jorge Pereira
 
Curso de introdução ao ruby
Curso de introdução ao rubyCurso de introdução ao ruby
Curso de introdução ao rubyFrancis Wagner
 
Introdução a JavaScript
Introdução a JavaScriptIntrodução a JavaScript
Introdução a JavaScriptBruno Catão
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascalJocelma Rios
 
Conceitos base de programação - parte 1
Conceitos base de programação - parte 1Conceitos base de programação - parte 1
Conceitos base de programação - parte 1João Piedade
 
Microfundamento - Algoritmos e Lógica de Programação (1).pdf
Microfundamento - Algoritmos e Lógica de Programação (1).pdfMicrofundamento - Algoritmos e Lógica de Programação (1).pdf
Microfundamento - Algoritmos e Lógica de Programação (1).pdfFelipeSoares580387
 

Semelhante a Linguagem Ruby em 40 (20)

Ruby - Criando código para máquinas e humanos
Ruby - Criando código para máquinas e humanosRuby - Criando código para máquinas e humanos
Ruby - Criando código para máquinas e humanos
 
Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001
 
Minicurso de Rails - WTISC 2014
Minicurso de Rails - WTISC 2014Minicurso de Rails - WTISC 2014
Minicurso de Rails - WTISC 2014
 
Ruby on rails gds 2011
Ruby on rails   gds 2011Ruby on rails   gds 2011
Ruby on rails gds 2011
 
Ruby learning
Ruby learningRuby learning
Ruby learning
 
Ruby para programadores PHP
Ruby para programadores PHPRuby para programadores PHP
Ruby para programadores PHP
 
Ruby para-programadores-php
Ruby para-programadores-phpRuby para-programadores-php
Ruby para-programadores-php
 
Minicurso Ruby on Rails
Minicurso Ruby on RailsMinicurso Ruby on Rails
Minicurso Ruby on Rails
 
Lógica de Programação e Algoritmos
Lógica de Programação e AlgoritmosLógica de Programação e Algoritmos
Lógica de Programação e Algoritmos
 
SFD - C# para a comunidade
SFD - C# para a comunidadeSFD - C# para a comunidade
SFD - C# para a comunidade
 
Curso de introdução ao ruby
Curso de introdução ao rubyCurso de introdução ao ruby
Curso de introdução ao ruby
 
Introdução a JavaScript
Introdução a JavaScriptIntrodução a JavaScript
Introdução a JavaScript
 
Lógica de programação pascal
Lógica de programação   pascalLógica de programação   pascal
Lógica de programação pascal
 
Conceitos base de programação - parte 1
Conceitos base de programação - parte 1Conceitos base de programação - parte 1
Conceitos base de programação - parte 1
 
Microfundamento - Algoritmos e Lógica de Programação (1).pdf
Microfundamento - Algoritmos e Lógica de Programação (1).pdfMicrofundamento - Algoritmos e Lógica de Programação (1).pdf
Microfundamento - Algoritmos e Lógica de Programação (1).pdf
 
Java - Primeiros passos
Java - Primeiros passosJava - Primeiros passos
Java - Primeiros passos
 
Palestra Ruby
Palestra RubyPalestra Ruby
Palestra Ruby
 
Ruby aula01
Ruby aula01Ruby aula01
Ruby aula01
 
Oz
OzOz
Oz
 
Python aula 1
Python aula 1Python aula 1
Python aula 1
 

Último

PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
Apresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxApresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxLusGlissonGud
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfmaurocesarpaesalmeid
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)ElliotFerreira
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfCamillaBrito19
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxferreirapriscilla84
 
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTailsonSantos1
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
Bloco de português com artigo de opinião 8º A, B 3.docx
Bloco de português com artigo de opinião 8º A, B 3.docxBloco de português com artigo de opinião 8º A, B 3.docx
Bloco de português com artigo de opinião 8º A, B 3.docxkellyneamaral
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números Mary Alvarenga
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMHELENO FAVACHO
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfHELENO FAVACHO
 
INTERVENÇÃO PARÁ - Formação de Professor
INTERVENÇÃO PARÁ - Formação de ProfessorINTERVENÇÃO PARÁ - Formação de Professor
INTERVENÇÃO PARÁ - Formação de ProfessorEdvanirCosta
 
Slides sobre as Funções da Linguagem.pptx
Slides sobre as Funções da Linguagem.pptxSlides sobre as Funções da Linguagem.pptx
Slides sobre as Funções da Linguagem.pptxMauricioOliveira258223
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfLeloIurk1
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdfAna Lemos
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médiorosenilrucks
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 

Último (20)

Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
Apresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxApresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptx
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdf
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptx
 
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
Bloco de português com artigo de opinião 8º A, B 3.docx
Bloco de português com artigo de opinião 8º A, B 3.docxBloco de português com artigo de opinião 8º A, B 3.docx
Bloco de português com artigo de opinião 8º A, B 3.docx
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
 
INTERVENÇÃO PARÁ - Formação de Professor
INTERVENÇÃO PARÁ - Formação de ProfessorINTERVENÇÃO PARÁ - Formação de Professor
INTERVENÇÃO PARÁ - Formação de Professor
 
Slides sobre as Funções da Linguagem.pptx
Slides sobre as Funções da Linguagem.pptxSlides sobre as Funções da Linguagem.pptx
Slides sobre as Funções da Linguagem.pptx
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
 
A QUATRO MÃOS - MARILDA CASTANHA . pdf
A QUATRO MÃOS  -  MARILDA CASTANHA . pdfA QUATRO MÃOS  -  MARILDA CASTANHA . pdf
A QUATRO MÃOS - MARILDA CASTANHA . pdf
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 

Linguagem Ruby em 40

  • 2. História Yukihiro Matsumoto 24 de fevereiro de 1993 O Ruby é uma linguagem com um cuidadoso equilíbrio. O seu criador, Yukihiro “Matz” Matsumoto, uniu partes das suas linguagens favoritas (Perl, Smalltalk, Eiffel, Ada e lisp) julho de 2004
  • 4. Tipos de dados • Integer é uma classe que representa números inteiros • Fixnum representa números inteiros de precisão fixa • Bignum representa números inteiros de precisão infinita, dependente apenas da memória disponível • Float é uma classe que representa números de ponto flutuante • Array [4, 'azul', :termometro] • Hash representa um vetor associativo {:controller => 'user', :action => 'index'}
  • 5. Tipos Primitivos Tudo em Ruby é um objeto e não existem tipos primitivos. Isso significa que até uma variável que armazene um valor inteiro é um objeto
  • 6. Estruturas de controle • If puts "Informe a sua idade" idade = gets.to_i if idade < 0 puts "essa não é uma idade válida" end • Else puts "Informe a sua idade" idade = gets.to_i if idade < 0 puts "essa não é uma idade válida" else puts "essa é uma idade válida" end
  • 7. • Elsif puts "Informe a sua idade" idade = gets.to_i if idade >= 0 and idade < 18 puts "ops! você não tem acesso a esse conteúdo“ elsif idade >= 18 puts "Olá! seja bem vindo, visitante!“ else puts "Essa não é uma idade válida“ end
  • 8. • Unless x = 10 unless x > 15 puts "x é menor ou igual a 15“ else puts "x é maior que 15“ end Saída x é menor ou igual a 15 • Case puts "Informe sua idade" idade = gets.to_i case idade when 0..12 puts "você é uma criança" when 13..17 puts "você é um adolescente“ else puts "você é um adulto“ end
  • 9. Estruturas de repetição • While while [codicao] do # operação a ser repetida aqui end contador = 0 while contador <= 10 do print "#{contador}, " contador += 1 end Saída 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, • Until until [condicao] do # operação a ser repetida aqui end contador = 10 until contador == 0 do print "#{contador}, " contador -= 1 end Saída 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,
  • 10. • For for [elemento] in [elementos_a_serem_percorridos] do end for contador in 0..10 do print #{contador}, " end Saída 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
  • 12. Principais ferramentas Ruby: No Windows, começamos com a linguagem. Para instalar você precisará entrar no site http://www.rubyinstaller.org/downloads/ - Td/Tk support: fornece ao Ruby uma interface gráfica para usuário (GUI = Graphical User Interface); - Add Ruby executables to your PATH: adiciona-se o ruby como executável; - Associate .rb and .rbw with this Ruby installation: arquivos com tal formato serão associados ao ruby; Após o término, entre no command prompt(Iniciar > cmd) e digite o seguinte código: ruby --version A reposta deve ser: ruby 2.0.0p481 e outros dados que dependem de atualizações e horários de instalação. Rails: Como Ruby 2.0 conta com RubyGems, basta atualizarmos com o comando: gem update -system Para instalar o Rails, o comando gem pode demorar um pouco, então digite novamente no cmd: gem install rails Para checar: rails -v
  • 13. Fim... Obrigado pela sua atenção Equipe: Alisson Santos Anderson Pereira Gilvan Gomes Herverson Sousa