A Linguagem Ruby

Preview:

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!

Recommended