Wende Mendes HiginoWende Mendes Higino
email: [email protected]: [email protected]
- Foi criada por Yukihiro Matsumoto ( 1993 )- Foi criada por Yukihiro Matsumoto ( 1993 ) link : http://vimeo.com/17091861 link : http://vimeo.com/17091861 - Orientada a objeto - Orientada a objeto
- Tipagem Forte- Tipagem Forte
- Dinâmica- Dinâmica
RubyRuby
Objetivo da sua criaçãoObjetivo da sua criação
Puramente orientada a objetoPuramente orientada a objeto
Linguagem interpretadaLinguagem interpretada
- Necessita da instalação de um interpretador ( MRI )- Necessita da instalação de um interpretador ( MRI )
- No MAC OS X ( já vem instalado ) - No MAC OS X ( já vem instalado )
Gerenciador de pacotesGerenciador de pacotes
- Ruby-Gems- Ruby-Gems
- Contém bibliotecas reutilizáveis- Contém bibliotecas reutilizáveis
- Pode conter código em ( C, Java, .Net ) - Pode conter código em ( C, Java, .Net )
Gerenciador de pacotesGerenciador de pacotes
- Precisamos instalar o - Precisamos instalar o Rubygems.Rubygems.
- http://www.rubygems.org/- http://www.rubygems.org/
Interpretadores RubyInterpretadores Ruby
- JRuby ( implementação em java da linguagen Ruby )- JRuby ( implementação em java da linguagen Ruby ) * interoperabilidade com código java existente* interoperabilidade com código java existente * suporta Rails 3 * suporta Rails 3
- IronRuby- IronRuby
- Ruby.Net- Ruby.Net
IRBIRB
- Um grande recurso- Um grande recurso
- Avalia cada linha inserida- Avalia cada linha inserida
IRBIRB
Executando RubyExecutando Ruby
- ruby wende.rb- ruby wende.rb
Executando RubyExecutando Ruby
Operações AritméticasOperações Aritméticas
- Multiplicação ( * )- Multiplicação ( * )
- Adição ( + ) - Adição ( + )
- Subtração ( - ) - Subtração ( - )
- Divisão ( / ) - Divisão ( / )
- Potência ( ** ) - Potência ( ** )
- Resto da divisão inteira ( % ) - Resto da divisão inteira ( % )
AdiçãoAdição
SubtraçãoSubtração
MultiplicaçãoMultiplicação
DivisãoDivisão
PotênciaPotência
RubyRuby
- Puts- Puts
- nil- nil
- Strings ( 'teste' ou “teste” )- Strings ( 'teste' ou “teste” )
StringString
- Operador ( + )- Operador ( + )
- Operador ( << ) - Operador ( << )
- Interpolação #{n}- Interpolação #{n}
String com operadoresString com operadores( +, << )( +, << )
String com interpolaçãoString com interpolação( #{n} )( #{n} )
String com interpolaçãoString com interpolação( #{n} )( #{n} )
String com interpolaçãoString com interpolação( #{n} )( #{n} )
String com interpolaçãoString com interpolação( #{n} )( #{n} )
- Interpolação ao invés de ( +, << )- Interpolação ao invés de ( +, << )
- Mais limpo - Mais limpo
- Mais legível- Mais legível
- Mais rápido- Mais rápido
Classe SymbolClasse Symbol
- Imutáveis- Imutáveis
- Compartilhado- Compartilhado
- Utilizados para nomenclatura- Utilizados para nomenclatura
- Utilizados para identifcadores- Utilizados para identifcadores
Classe SymbolClasse Symbol
Operadores boleanosOperadores boleanos
- Operadores ( ==, >, <, >=, <= )- Operadores ( ==, >, <, >=, <= )
- Combinações ( and, or )- Combinações ( and, or )
RangeRange
- (1..10)- (1..10)
- ('a'..'z')- ('a'..'z')
- ('cab'..'caf')- ('cab'..'caf')
RangeRange
Trabalhando com IFTrabalhando com IF
Trabalhando com IFTrabalhando com IF
Trabalhando com SwitchTrabalhando com Switch
Trabalhando com SwitchTrabalhando com Switch
Trabalhando com if/elsifTrabalhando com if/elsif
Trabalhando com if/elsifTrabalhando com if/elsif