SlideShare una empresa de Scribd logo
1 de 30
Ruby
Aula 1
Características da Linguagem
Alto nível, o que significa que a leitura e a
escrita em Ruby é realmente fácil — parece muito
com o idioma inglês!
Interpretada, o que significa que você não
precisa de um compilador para codificar e
executar seus programas em Ruby. IRB
Características da Linguagem
Orientada a objetos, o que significa que ela
permite que os usuários manipulem estruturas de
dados chamadas objetos para criar e executar
programas.
Vamos aprender mais sobre objetos depois, mas
por enquanto, tudo o que você precisa saber é
que absolutamente tudo em Ruby é um objeto.
Características da Linguagem
Fácil de usar, Ruby foi desenvolvido por Yukihiro
Matsumoto (frequentemente chamado de "Matz")
em 1995. Matz se concentrou em desenvolver
uma linguagem que enfatiza as necessidades
humanas ao invés das necessidades do
computador, o que é o motivo de Ruby ser tão
fácil de compreender.
Aula de Hoje
Strings, Números,
Variáveis, Constantes e
Comentários
Oops… antes disso
Como “rodar” um
programa em Ruby?
Números
> 100.class
=> Fixnum
> 10000000000000000000.class
=> Bignum
> 100.0.class
=> Float
Conversão de Números
> 1.0 + 2
=> 3.0
> 1 / 2
=> 0
> 1.0 / 2
=> 0.5
> 1 / 2.0
=> 0.5
Números: Operadores Aritméticos
a = 10 e b = 20
a + b
a – b
a * b
b / a
b % a
a ** b
Números: Operadores de atribuição
a = 10 e b = 20
c = a + b
c += a é equivalente a c = c + a
c -= a é equivalente a c = c - a
c *= a é equivalente a c = c * a
c /= a é equivalente a c = c / a
c %= a é equivalente a c = c % a
c **= a é equivalente a c = c ** a
Strings
Letras, Palavras, e Textos
Strings
“” ou ''
“Este é um programa em Ruby”
'Este também é um programa em Ruby'
Strings
puts 'Olá, mundo! :)'
puts ''
puts 'Até logo.'
Strings: Interpolação
'Seconds/day: #{24 * 60 * 60}'
"Seconds/day: #{24 * 60 * 60}"
'Tro #{'Lo ' * 3}!!!1'
“Tro #{'Lo ' * 3}!!!1”
Strings: Scape
puts 'Lata d'água na cabeça.'
puts “A “baby-sitter” e o “barman”
marcaram um encontro no “hall” do
edifício.”
:(
Strings: Scape
puts 'Lata d'água na cabeça.'
puts “A “baby-sitter” e
o “barman” marcaram um encontro
no “hall” do edifício.”
:)
Strings: Concatenação
> 'Con' "cat" 'ena' "ção"
> 'Con'+"cat"+'ena'+"ção"
nome = 'Arnold'
nome << 'Schwarzenegger'
nome.concat('da Silva')
Strings: Acessando caracteres
puts curso = 'Ruby on Rails Turma 2016/2'
puts curso[0]
puts curso.slice(0)
puts curso[-1]
puts curso[8..12]
puts curso[14..-8]
Strings: Métodos Usuais
"inTEraJe".capitalize
"Interaje".downcase
"Interaje".chars
"Interaje".index("ra")
"Interaje".insert(0, "Instituto ")
"Interaje".partition("ra")
"Interaje".reverse
Strings: Métodos Usuais
"Terça tem aula de
ruby".gsub('Terça', 'Quarta')
"Instituto de Jovens Empreendedores
Digitais de Teresina".lenght
"Instituto de Jovens Empreendedores
Digitais de Teresina".size
Strings: Métodos Usuais
"Instituto de Jovens
Empreendedores Digitais de
Teresina".split
"Interaje - Instituto de Jovens
Empreendedores Digitais de
Teresina".split('-')
Variáveis e Constantes
variavel = sempre inicia com letra minúscula
Constante = sempre inicia com letra maiúscula
variavel: o valor pode ser modificado.
CONSTANTE: o valor é sempre o mesmo.
* CONSTANTE: GERALMENTE TUDO CAIXA ALTA
Variáveis
Ruby é uma linguagem dinâmica
variavel = 3
variavel.class
variavel = '3'
variavel.class
Variáveis
Porém é fortemente tipada.
a = 1
b = '1'
a + b #erro
Variáveis
nome = 'Maria Joaquina de Amaral Pereira Goes'
puts 'O nome da moça é ' + nome + '.'
puts 'Nossa! ' + nome + ' é um nome bem longo!'
idade = '27 anos'
puts nome + 'tem' + idade
Comentários
Comentário de linha:
# nome = 'Maria Joaquina de Amaral Pereira Goes'
Comentário de bloco
=begin
puts 'O nome da moça é ' + nome + '.'
puts 'Nossa! ' + nome + ' é um nome bem longo!'
=end
Desafios
1) Sem tentar executar o código abaixo, responda: Ele funciona?
Por que?
resultado = 10 + 4
texto = "O valor é " + resultado
puts(texto)
2) E o código abaixo, deveria funcionar? Por que?
puts(1+2)
Desafios
3) Qual a saída deste código?
resultado = 10 ** 2
puts('o resultado é: #{resultado}')
4) Baseado na sua resposta da primeira questão, por que o código
abaixo funciona?
resultado = 10 + 3
texto = "O valor é: #{resultado}"
Referências para Estudo
● http://www.jmonteiro.com/aprendaaprogramar/index
● http://kottans.org/ruby-slides/public/rubybasics/
● https://www.caelum.com.br/apostila-ruby-on-rails/ru
Fim da Primeira Aula: Enquete
1 2 3

Más contenido relacionado

La actualidad más candente

Ruby para programadores PHP
Ruby para programadores PHPRuby para programadores PHP
Ruby para programadores PHPJuan Maiz
 
Ruby, Rails e Diversão (Campus Party Brasil 2009)
Ruby, Rails e Diversão (Campus Party Brasil 2009)Ruby, Rails e Diversão (Campus Party Brasil 2009)
Ruby, Rails e Diversão (Campus Party Brasil 2009)Julio Monteiro
 
Slide de JAVA
Slide de JAVASlide de JAVA
Slide de JAVAEd W. Jr
 

La actualidad más candente (6)

Ruby para programadores PHP
Ruby para programadores PHPRuby para programadores PHP
Ruby para programadores PHP
 
Paradigmas do Ruby
Paradigmas do RubyParadigmas do Ruby
Paradigmas do Ruby
 
Ruby, Rails e Diversão (Campus Party Brasil 2009)
Ruby, Rails e Diversão (Campus Party Brasil 2009)Ruby, Rails e Diversão (Campus Party Brasil 2009)
Ruby, Rails e Diversão (Campus Party Brasil 2009)
 
Palestra Ruby
Palestra RubyPalestra Ruby
Palestra Ruby
 
Aula 1
Aula 1Aula 1
Aula 1
 
Slide de JAVA
Slide de JAVASlide de JAVA
Slide de JAVA
 

Destacado

Curso de Ruby on Rails
Curso de Ruby on RailsCurso de Ruby on Rails
Curso de Ruby on RailsCJR, UnB
 
Launching Ruby on Rails projects: A checklist
Launching Ruby on Rails projects: A checklistLaunching Ruby on Rails projects: A checklist
Launching Ruby on Rails projects: A checklistRobby Russell
 
Ruby on Rails 101 - Presentation Slides for a Five Day Introductory Course
Ruby on Rails 101 - Presentation Slides for a Five Day Introductory CourseRuby on Rails 101 - Presentation Slides for a Five Day Introductory Course
Ruby on Rails 101 - Presentation Slides for a Five Day Introductory Coursepeter_marklund
 
Enterprise Architectures with Ruby (and Rails)
Enterprise Architectures with Ruby (and Rails)Enterprise Architectures with Ruby (and Rails)
Enterprise Architectures with Ruby (and Rails)Konstantin Gredeskoul
 
Ruby On Rails Introduction
Ruby On Rails IntroductionRuby On Rails Introduction
Ruby On Rails IntroductionThomas Fuchs
 

Destacado (6)

Curso de Ruby on Rails
Curso de Ruby on RailsCurso de Ruby on Rails
Curso de Ruby on Rails
 
Launching Ruby on Rails projects: A checklist
Launching Ruby on Rails projects: A checklistLaunching Ruby on Rails projects: A checklist
Launching Ruby on Rails projects: A checklist
 
Ruby on Rails 101 - Presentation Slides for a Five Day Introductory Course
Ruby on Rails 101 - Presentation Slides for a Five Day Introductory CourseRuby on Rails 101 - Presentation Slides for a Five Day Introductory Course
Ruby on Rails 101 - Presentation Slides for a Five Day Introductory Course
 
Ruby on Rails for beginners
Ruby on Rails for beginnersRuby on Rails for beginners
Ruby on Rails for beginners
 
Enterprise Architectures with Ruby (and Rails)
Enterprise Architectures with Ruby (and Rails)Enterprise Architectures with Ruby (and Rails)
Enterprise Architectures with Ruby (and Rails)
 
Ruby On Rails Introduction
Ruby On Rails IntroductionRuby On Rails Introduction
Ruby On Rails Introduction
 

Similar a Ruby aula01

Minicurso de Rails - WTISC 2014
Minicurso de Rails - WTISC 2014Minicurso de Rails - WTISC 2014
Minicurso de Rails - WTISC 2014Zarathon Maia
 
Começando com Ruby - III SEICOM
Começando com Ruby - III SEICOMComeçando com Ruby - III SEICOM
Começando com Ruby - III SEICOMKenner Kliemann
 
Desvendando a linguagem JavaScript
Desvendando a linguagem JavaScriptDesvendando a linguagem JavaScript
Desvendando a linguagem JavaScriptRodrigo Branas
 
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 á linguagem Ruby com aplicativo em Rails
Introdução á linguagem Ruby com aplicativo em RailsIntrodução á linguagem Ruby com aplicativo em Rails
Introdução á linguagem Ruby com aplicativo em Railsoverduka
 
Workshop Ruby on Rails dia 1 ruby-pt
Workshop Ruby on Rails dia 1 ruby-ptWorkshop Ruby on Rails dia 1 ruby-pt
Workshop Ruby on Rails dia 1 ruby-ptPedro Sousa
 
Swift em 45 minutos - TDC Sao Paulo 2014
Swift em 45 minutos - TDC Sao Paulo 2014Swift em 45 minutos - TDC Sao Paulo 2014
Swift em 45 minutos - TDC Sao Paulo 2014Helder da Rocha
 
Ruby para-programadores-php
Ruby para-programadores-phpRuby para-programadores-php
Ruby para-programadores-phpJuan Maiz
 
Crash Course Ruby & Rails
Crash Course Ruby & RailsCrash Course Ruby & Rails
Crash Course Ruby & RailsFrevo on Rails
 
Ruby para testers II - Introdução
Ruby para testers II - IntroduçãoRuby para testers II - Introdução
Ruby para testers II - IntroduçãoTestRock!
 
Curso PHP UNIFACS 2014.1 – 1a Aula
Curso PHP UNIFACS 2014.1 – 1a AulaCurso PHP UNIFACS 2014.1 – 1a Aula
Curso PHP UNIFACS 2014.1 – 1a AulaJonata Weber
 
Trabalho sobre Ruby(Linguagem de programação )
Trabalho sobre Ruby(Linguagem de programação )Trabalho sobre Ruby(Linguagem de programação )
Trabalho sobre Ruby(Linguagem de programação )TheFill
 

Similar a Ruby aula01 (20)

Minicurso de Rails - WTISC 2014
Minicurso de Rails - WTISC 2014Minicurso de Rails - WTISC 2014
Minicurso de Rails - WTISC 2014
 
Começando com Ruby - III SEICOM
Começando com Ruby - III SEICOMComeçando com Ruby - III SEICOM
Começando com Ruby - III SEICOM
 
Desvendando a linguagem JavaScript
Desvendando a linguagem JavaScriptDesvendando a linguagem JavaScript
Desvendando a linguagem JavaScript
 
Curso Ruby
Curso RubyCurso Ruby
Curso Ruby
 
Curso de introdução ao ruby
Curso de introdução ao rubyCurso de introdução ao ruby
Curso de introdução ao ruby
 
O mundo visto de dentro do Ruby
O mundo visto de dentro do RubyO mundo visto de dentro do Ruby
O mundo visto de dentro do Ruby
 
Introdução á linguagem Ruby com aplicativo em Rails
Introdução á linguagem Ruby com aplicativo em RailsIntrodução á linguagem Ruby com aplicativo em Rails
Introdução á linguagem Ruby com aplicativo em Rails
 
Workshop Ruby on Rails dia 1 ruby-pt
Workshop Ruby on Rails dia 1 ruby-ptWorkshop Ruby on Rails dia 1 ruby-pt
Workshop Ruby on Rails dia 1 ruby-pt
 
Swift em 45 minutos - TDC Sao Paulo 2014
Swift em 45 minutos - TDC Sao Paulo 2014Swift em 45 minutos - TDC Sao Paulo 2014
Swift em 45 minutos - TDC Sao Paulo 2014
 
Ruby para-programadores-php
Ruby para-programadores-phpRuby para-programadores-php
Ruby para-programadores-php
 
Aula 2
Aula 2Aula 2
Aula 2
 
Aula 2
Aula 2Aula 2
Aula 2
 
Aula 2
Aula 2Aula 2
Aula 2
 
Minicurso Ruby
Minicurso RubyMinicurso Ruby
Minicurso Ruby
 
Crash Course Ruby & Rails
Crash Course Ruby & RailsCrash Course Ruby & Rails
Crash Course Ruby & Rails
 
Ruby para testers II - Introdução
Ruby para testers II - IntroduçãoRuby para testers II - Introdução
Ruby para testers II - Introdução
 
Aprendendo ruby
Aprendendo rubyAprendendo ruby
Aprendendo ruby
 
Object Oriented Programming
Object Oriented ProgrammingObject Oriented Programming
Object Oriented Programming
 
Curso PHP UNIFACS 2014.1 – 1a Aula
Curso PHP UNIFACS 2014.1 – 1a AulaCurso PHP UNIFACS 2014.1 – 1a Aula
Curso PHP UNIFACS 2014.1 – 1a Aula
 
Trabalho sobre Ruby(Linguagem de programação )
Trabalho sobre Ruby(Linguagem de programação )Trabalho sobre Ruby(Linguagem de programação )
Trabalho sobre Ruby(Linguagem de programação )
 

Ruby aula01