Paradigmas do Ruby

4,363 views

Published on

Essa apresentação passa uma visão de avaliação da linguagem Ruby, como Legibilidade, Redigibilidade, Confiabilidade.
Também cita características que enriquece a linguagem Ruby.

  • Be the first to comment

Paradigmas do Ruby

  1. 1. Paradigmas da Linguagem Rubysexta-feira, 7 de outubro de 11
  2. 2. Introdução • Desenvolvida por Yukishiro Matsumoto • Lançada em 1995 • Baseado na linguagem Perl, Smalltalk, Python • Escrita em C • Multiplataforma • O projeto mais famoso é o meta-framework Ruby on Rails.sexta-feira, 7 de outubro de 11
  3. 3. Características • Interpretada • não é compilada • analise sintática é feita em tempo de execução • Tipagem dinâmica e forte • não é necessário declaração de variável • Tipos Primitivos são Classes • Herança Simples (É usado Mixin’s, ultiliza o conceito de módulos ou coleções de métodos) • Diferente das linguagens Python e C++sexta-feira, 7 de outubro de 11
  4. 4. Características • Multi-paradigma • Orientada Objetos • Funcional • Programação Imperativa • Open Source • Case-sensitive • Bibliotécas (Ruby Gems)sexta-feira, 7 de outubro de 11
  5. 5. Características • Variáveis • Variáveis de Instância - @cliente • Variáveis Classes - @@cliente • Variáveis Globais - $cliente • Variáveis Locais - clientesexta-feira, 7 de outubro de 11
  6. 6. Características • Ver tudo como um Objeto Cada parcela de informação e código podem receber as suas próprias propriedades e ações. Classe Classe herdando outra class MyLib class MyOtherLib < MyLib ! @@name = "mylib" ! @@name = "myotherlib" ! end ! def self.name ! ! @@name ! end MyOtherLib.name end #=> "myotherlib" MyLib.name MyLib.name #=> "mylib" #=> "myotherlib"sexta-feira, 7 de outubro de 11
  7. 7. Características • Os métodos sempre retornam algo, nem que seja nil def um_metodo def um_metodo def um_metodo end (1..5).to_a 1 == 2-1 um_metodo end end # nil um_metodo um_metodo # [1,2,3,4,5] # true • Multiplos retornos por métodos def um_metodo return 1,2,3 end a ,b,c = um_metodo puts a ,b ,c #1 #2 #3sexta-feira, 7 de outubro de 11
  8. 8. Critérios de Avaliação • Legibilidade(Facilidade de Leitura e Entendimento) • Syntaxe limpa # Output “Eu gosto de Ruby” diz = "Eu gosto de Ruby" puts diz • Redigibilidade (Facilidade em escrever programas) • class Carro < Veiculo #suporte a abstração • carro = 1 carro = ”Gol” # não precisa definir o tipo da variável • Confiabilidade • Verificação de Tipos de variáveis (x.kind_of? Integer) • Tratamento de Exceção (raise, Throw/Catch)sexta-feira, 7 de outubro de 11
  9. 9. Critérios de Avaliação • Facilidade de Aprendizado • Documentação para aprendizado • Similaridade com outras linguagens (C, Python, Smalltalk) • Reusabilidade • Possui o Paradigma Orientado a Objetos possuindo Herança • No Ruby existe o conceito de módulos (chamados categorias em Objective-C). Os módulos são coleções de métodos. class MyArray include Enumerable end • Portabilidade • Roda em todos Sistemas Operacionais (Instalando o RVM)sexta-feira, 7 de outubro de 11
  10. 10. Onde se pode usar? Testes Automatizados •Web •Desktop •Scripting •Computação Científica •Inteligência Artifícial •Bioinformática •etc...sexta-feira, 7 de outubro de 11
  11. 11. Plataformas Suportadas • Mac OS x •Linux •MS-DOS •BSDs (inclui o FreeBSD e o OpenBSD) •Acorn RISC OS •Microsoft Windows 95, 98, XP, and Vista •OS/2 •Amiga •Celulares Symbian Series 60 •Plataformas que contém uma Máquina Virtual Java (Usando JRuby ao invés de Ruby oficial)sexta-feira, 7 de outubro de 11
  12. 12. Paradigmas Linguagem Ruby Faculdade Anglo Americano Curso: Ciência da Computação Nomes: Heverson Damascenosexta-feira, 7 de outubro de 11

×