Upload
juliano-flores
View
1.130
Download
4
Embed Size (px)
DESCRIPTION
Citation preview
A Linguagem RubyA Linguagem Ruby
Por: Bernardo Botelho, Felipe Rabuske, Juliano Flores e Vinícius Bitencourt
A Linguagem RubyA Linguagem Ruby
Agenda:
Histórico e Etimologia Características da Linguagem Tipos de Dados Abstratos Organização do Código Sintaxe da Linguagem Tipos de Polimorfismo Modelo de Execução Influências de Outras Linguagens Exemplos de Programas OO Outras Informações
A Linguagem RubyA Linguagem Ruby
Histórico e Etimologia
A Linguagem RubyA Linguagem Ruby
Características da Linguagem
• Linguagem de script, interpretada.
• Em Ruby, tudo é um objeto. Tipos como números, que em grande parte das linguagens
são tipos especiais primitivos, em Ruby, são como qualquer outro objeto.
• É uma linguagem multi-paradigma, pode ser escrita de forma imperativa, funcional ou
puramente orientada a objetos.
• Toda a linguagem pode ser redefinida.
• Por ser uma linguagem dinâmica, executa verificações e comportamentos durante a
execução, ao contrarío de outras linguagens como C, que fazem essas verificações
durante a compilação.
• Sua tipagem é dinâmica e forte
• Garbage collected
A Linguagem RubyA Linguagem Ruby
Tipos de Dados Abstratos
• Numbers: números ponto flutuante e inteiros
• Strings: sequência de bytes.
• Ranges: Intervalos
• Expressões Regulares
• Container types: Arrays, Hashes, Blocks and Iterators
A Linguagem RubyA Linguagem Ruby
Organização do Código
Arbitrária, não possui regras para localização das declarações de variáveis, como o C
clássico.
Código pode ser modularizado com classes e funções, mas instruções encontradas no
meio dessas declarações são executadas assim que encontradas.
Definição de métodos e funções:
Variável local: local_var
Variável de instância: @instance_var
Variável global: $global_var
A Linguagem RubyA Linguagem Ruby
Organização do Código
def metodo(par1, par2)#do stuff
End
Classes:
class Pessoadef initialize(nome)
@nome = nomeenddef ola
"Olá, meu nome é #{@nome}."end
end
A Linguagem RubyA Linguagem Ruby
Sintaxe da Linguagem
A Linguagem RubyA Linguagem Ruby
Tipos de Polimorfismo
A Linguagem RubyA Linguagem Ruby
Modelo de Execução
Diversas implementações da linguagem: Ruby MRI, YARV, JRuby, Rubinius, IronRuby,
MacRuby, HotRuby, etc.
YARV (Yet A Ruby VM) para Ruby 1.9:
O interpretador analisa e cria a árvore de sintaxe.
Uma maquina virtual é carregada.
A árvore de sintaxe é percorrida, executando o programa sem levar em
consideração sua estrutura original, somente a da árvore.
Isso torna a execução do Ruby mais rápida que a das demais implementações.
A Linguagem RubyA Linguagem Ruby
Influências de Outras Linguagens
Altamente influenciada pelo Perl e seu e seu princípio ““there is more than one
way to do it””.
Recebeu influências da linguagem Smalltalk, onde quase tudo é um objeto.
Aproveitou as melhores ideias de outras linguagem, em menor escala, tornando-
a uma linguagem dinâmica e de fácil migração.
A Linguagem RubyA Linguagem RubyExemplos de Programas OO (1/3)
A Linguagem RubyA Linguagem RubyExemplos de Programas OO (2/3)
A Linguagem RubyA Linguagem RubyExemplos de Programas OO (3/3)
A Linguagem RubyA Linguagem Ruby
Outras Informações
Usos indicados: Aplicações web, administração de redes, automatização de tarefas e
programação de jogos são alguns exemplos;
Não requer IDE (IRB);
Suporta o uso de pacotes (statement require);
Possibilidade de uso de gerenciador de pacotes (Gems);
Possibilidade de uso de frameworks (Rails);
Versão estável: 1.9.3-p0 (30/10/2011).
A Linguagem RubyA Linguagem Ruby
Dúvidas???
A Linguagem RubyA Linguagem Ruby
Obrigado!