21
APRESENTAÇÃO RUBY Alunos Luís Gustavo T. Cordeiro Jhonatan C. Morais Guilherme S. Pinheiro Octávio Richter

Apresentação Ruby

  • Upload
    zev

  • View
    58

  • Download
    0

Embed Size (px)

DESCRIPTION

Apresentação Ruby. Alunos Luís Gustavo T. Cordeiro Jhonatan C. Morais Guilherme S. Pinheiro Octávio Richter. Histórico. Desenvolvida no Japão em 1995, por  Yukihiro " Matz " Matsumoto. Linguagem de script. Mais poderosa do que Perl, e mais orientada a objetos do que Python. - PowerPoint PPT Presentation

Citation preview

Page 1: Apresentação Ruby

APRESENTAÇÃO RUBYAlunos

• Luís Gustavo T. Cordeiro• Jhonatan C. Morais• Guilherme S. Pinheiro• Octávio Richter

Page 2: Apresentação Ruby

HISTÓRICODesenvolvida no Japão em 1995, por Yukihiro "Matz" Matsumoto.

• Linguagem de script.• Mais poderosa do que Perl, e mais orientada a

objetos do que Python.Uniu partes das suas linguagens favoritas:

• Perl, Smalltalk, Eiffel, Ada e Lisp.Equilibra a programação funcional com a programação imperativa.

Page 3: Apresentação Ruby

IDEAIS DO CRIADOR• “Tento tornar o Ruby natural, não simples”

• “O Ruby é simples na aparência, mas muito complexo no interior, tal como o corpo humano.” Matz

Por que esse nome?• O nome “Ruby”, foi decidido durante uma sessão de bate-

papo online entre Matsumoto e Keiju Ishitsuka antes de sua utilização. Inicialmente foram propostos dois nomes: “Coral” e “Ruby”

• Matsumoto escolheu Ruby por ser a pedra zodiacal de um de seus colegas.

Totalmente livre. Não somente livre de custos, mas também livre para utilizar, copiar, modificar e distribuir.

Page 4: Apresentação Ruby

CRESCIMENTOLista de discussão em inglês chamada Ruby-Talk

• principal lista de correio para a discussão sobre a linguagem Ruby subiu para uma média de 200 mensagens diárias.

O primeiro livro em inglês, Programming Ruby, liberado gratuitamente para o público, ajudou no processo de adoção de Ruby por falantes do inglês.

• Por volta de 2005, o interesse pela linguagem Ruby subiu em conjunto com o Ruby on Rails, um framework de aplicações web popular escrito em Ruby.

Eleita Linguagem de Programação do Ano em 2006

Page 5: Apresentação Ruby

ÍNDICE TIOBEPositionDec 2012

PositionDec 2011

Delta in PositionProgramming

LanguageRatings

Dec 2012Delta 

Dec 2011Status

1 2 C 18.696% +1.64%   A

2 1 Java 17.567% +0.01%   A

3 5 Objective-C 11.116% +4.31%   A

4 3 C++ 9.203% +0.95%   A

5 4 C# 5.547% -2.66%   A

6 6 PHP 5.541% -0.46%   A

7 7 (Visual) Basic 5.174% +0.42%   A

8 8 Python 3.848% +0.36%   A

9 9 Perl 2.174% -0.30%   A

10 11 Ruby 1.728% +0.23%   A

11 10 JavaScript 1.321% -0.88%   A

12 12Delphi/Object

Pascal0.977% -0.27%   A

13 13 Lisp 0.949% -0.23%   A

14 16 Pascal 0.894% +0.16%   A

15 35 Visual Basic .NET 0.889% +0.53%   A

16 17 Ada 0.648% +0.02%   B

17 22 MATLAB 0.608% +0.07%   B

18 21 Lua 0.601% +0.05%   A--

19 19 Assembly 0.580% +0.02%   B

20 14 PL/SQL 0.574% -0.23%   B

Page 6: Apresentação Ruby

PRINCIPAIS CARACTERÍSTICASEstrutura Geral:

• Linguagem interpretada;• Orientada à objetos (“tudo” é objeto);• Portável;• Trabalha com herança, classes, métodos, polimorfismo e

escalonamento;• Sintaxe relativamente simples e de fácil compreensão

Page 7: Apresentação Ruby

PRINCIPAIS CARACTERÍSTICAS•Métodos:

– Possibilidade de dinamicamente expandir os parâmetros;– Pode retornar qualquer tipo;

Page 8: Apresentação Ruby

PRINCIPAIS CARACTERÍSTICAS•Variáveis:

– Referencias para objetos (não existe ponteiros);– “Não” possuem tipo;– Não precisam ser declarados antes de serem utilizados;– Atribuição de valor é feita através de referencias;

Page 9: Apresentação Ruby

PRINCIPAIS CARACTERÍSTICASGerenciamento de Memória:

• Feito automaticamente pelo próprio interpretador;• Acontecem poucos erros ou travamentos;

Page 10: Apresentação Ruby

PRINCIPAIS CARACTERÍSTICASThreads:

• Não há necessidade de uma biblioteca externa;• Implementação ocorre em nível de usuário;• Criação de novos processos é feita pelo método da classe

Kernel;• Sincronização é feita através do mutex;

Page 11: Apresentação Ruby

PRINCIPAIS CARACTERÍSTICAS

•Flexibilidade:– Permite aos seus utilizadores alterar partes da linguagem;– Partes essenciais podem ser removidas ou referenciadas à

vontade;– Acrescentar partes as já existentes;

Page 12: Apresentação Ruby

JAVA WEB X RUBY ON JAVA WEB X RUBY ON RAILSRAILS•Produtividade e curva de aprendizado;• Simplicidade;• Manutenção;• Internacionalização (UTF-8);• Aplicativos de suporte;• Funções adicionais (bibliotecas);• Manipulação de dados;• Suporte ao longo prazo.

Page 13: Apresentação Ruby

DIFERENÇAS DA LINGUAGEMDIFERENÇAS DA LINGUAGEMJava Ruby

Definição de métodos Entre “{}” “end”

Utilização de bibliotecas “import” “require”Parâmetros de métodos Entre “()” Parêntesis opcionaisAtributos Privados, protegidos,

públicosprivados

Orientação a objetos Variáveis primitivas e de instância

Tudo é objeto

Instanciação x = new X(); x = X.newConstrutor Nome da classe initializeTipagem Estática Dinâmica

Condições Expressões lógicas Tudo é verdadeiro, exceto false e nil

Sobrescrita Apenas métodos Métodos e operadoresEncapsulamento Classes encapsuladas Classes abertas

Page 14: Apresentação Ruby

• Final de linha• Enums• Char• Acesso de atributos• Nome de métodos

DIFERENÇAS DA LINGUAGEMDIFERENÇAS DA LINGUAGEM

Page 15: Apresentação Ruby

PRESENÇA DE RUBY NO MERCADO

• Ruby e suas tecnologias são utilizadas por grandes corporações em diversos tipos de aplicações, destinadas por exemplo, a telefonia, gerência de sistemas e redes, portais corporativos, comércio eletrônico, redes sociais e até mesmo robótica.

Page 16: Apresentação Ruby

PRESENÇA DE RUBY NO MERCADO

• Segundo informação do site Workingwithrails, grandes empresas brasileiras como Rede Globo, Grupo Abril, Locaweb, e gigantes internacionais como BBC, AOL, Amazon, Groupon entre outras utilizam a tecnologia Ruby on Rails em suas organizações.

Page 17: Apresentação Ruby

RUBY GEMS• Gerenciador de pacotes de Ruby. • Disponibiliza um formato padrão para a distribuição de

programas e bibiliotecas Ruby, são os pacotes denominados “gems”.

• Tem como fonte padrão o seu site oficial (rubygems.org), no site há espaço para desenvolvedores cadastrados disponibilizarem suas bibiliotecas para toda comunidade.

Page 18: Apresentação Ruby

RUBY ON RAILS• Framework livre de desenvolvimento web. Permite

desenvolvimento rápido e fácil de aplicações, seguindo o padrão de arquitetura MVC (Model-View-Controller). Tem sido a maior razão para o sucesso de Ruby na web.

Page 19: Apresentação Ruby

JRUBYImplementação da linguagem Ruby para plataforma Java

• Roda sobre a JVM• Threads Nativas• JIT (Just-in-time compiler)• Garbage colector

• Possibilidade de utilizar bibliotecas e classes Java• Jar's, servlets, hibernate, JDBC, etc.• Suporta Rubygems• Suporta Rails

Page 20: Apresentação Ruby

UTILIZAÇÃO DE JAVA COMO PLATAFORMA

Page 21: Apresentação Ruby

REFERÊNCIAS• http://www.dotlib.com.br/i/4768a22a0d58da3cfa71294e40ed6229.pdf• http://www.ruby-lang.org• http://pt.wikipedia.org/wiki/Ruby_(linguagem_de_programa%C3%A7

%C3%A3o)• http://www.tryruby.org• http://www.slideshare.net/Belighted/ruby-vs-java• http://www.urubatan.com.br/ruby-on-rails-x-java-web/• http://www.pardontheinformation.com/2008/09/java-vs-ruby-on-rails-

it-is-dead-heat.html• http://jruby.org/• http://rubyonrails.com.br• http://rubygems.org/• http://www.youtube.com/watch?v=5b3qd2VMLws