Professional Documents
Culture Documents
Alunos
HISTRICO
Desenvolvida no Japo 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 programao funcional com a
programao imperativa.
IDEAIS DO CRIADOR
Tento tornar o Ruby natural, no simples
O Ruby simples na aparncia, mas muito complexo no
interior, tal como o corpo humano. Matz
Por que esse nome?
O nome Ruby, foi decidido durante uma sesso de batepapo online entre Matsumoto e Keiju Ishitsuka antes de sua
utilizao. Inicialmente foram propostos dois nomes: Coral e
Ruby
Matsumoto escolheu Ruby por ser a pedra zodiacal de um de
seus colegas.
Totalmente livre. No somente livre de custos, mas tambm
livre para utilizar, copiar, modificar e distribuir.
CRESCIMENTO
Lista de discusso em ingls chamada Ruby-Talk
principal lista de correio para a discusso sobre a
linguagem Ruby subiu para uma mdia de 200
mensagens dirias.
O primeiro livro em ingls, Programming Ruby,
liberado gratuitamente para o pblico, ajudou no
processo de adoo de Ruby por falantes do ingls.
Por volta de 2005, o interesse pela linguagem Ruby
subiu em conjunto com o Ruby on Rails, um
framework de aplicaes web popular escrito em
Ruby.
Eleita Linguagem de Programao do Ano em 2006
NDICE TIOBE
Position
Position
Dec 2012
Dec 2011
Programming
Ratings
Delta
Language
Dec 2012
Dec 2011
18.696%
+1.64%
Java
17.567%
+0.01%
Objective-C
11.116%
+4.31%
C++
9.203%
+0.95%
C#
5.547%
-2.66%
PHP
5.541%
-0.46%
(Visual) Basic
5.174%
+0.42%
Python
3.848%
+0.36%
Perl
2.174%
-0.30%
10
11
Ruby
1.728%
+0.23%
11
10
JavaScript
1.321%
-0.88%
12
12
0.977%
-0.27%
Delta in Position
Status
Delphi/Object
Pascal
13
13
Lisp
0.949%
-0.23%
14
16
Pascal
0.894%
+0.16%
15
35
0.889%
+0.53%
16
17
Ada
0.648%
+0.02%
17
22
MATLAB
0.608%
+0.07%
18
21
Lua
0.601%
+0.05%
A--
19
19
Assembly
0.580%
+0.02%
20
14
PL/SQL
0.574%
-0.23%
PRINCIPAIS
CARACTERSTICAS
Estrutura Geral:
Linguagem interpretada;
Orientada objetos (tudo objeto);
Portvel;
Trabalha com herana, classes, mtodos, polimorfismo e
escalonamento;
Sintaxe relativamente simples e de fcil compreenso
PRINCIPAIS
CARACTERSTICAS
Mtodos:
Possibilidade de dinamicamente expandir os parmetros;
Pode retornar qualquer tipo;
PRINCIPAIS
CARACTERSTICAS
Variveis:
Referencias para objetos (no existe ponteiros);
No possuem tipo;
No precisam ser declarados antes de serem utilizados;
Atribuio de valor feita atravs de referencias;
PRINCIPAIS
CARACTERSTICAS
Gerenciamento de Memria:
Feito automaticamente pelo prprio interpretador;
Acontecem poucos erros ou travamentos;
PRINCIPAIS
CARACTERSTICAS
Threads:
No h necessidade de uma biblioteca externa;
Implementao ocorre em nvel de usurio;
Criao de novos processos feita pelo mtodo da classe
Kernel;
Sincronizao feita atravs do mutex;
PRINCIPAIS
CARACTERSTICAS
Flexibilidade:
Permite aos seus utilizadores alterar partes da linguagem;
Partes essenciais podem ser removidas ou referenciadas
vontade;
Acrescentar partes as j existentes;
DIFERENAS DA LINGUAGEM
Java
Ruby
Definio de mtodos
Entre {}
end
Utilizao de bibliotecas
import
require
Parmetros de mtodos
Entre ()
Parntesis opcionais
Atributos
Privados, protegidos,
pblicos
privados
Orientao a objetos
Variveis primitivas e de
instncia
Tudo objeto
Instanciao
x = new X();
x = X.new
Construtor
Nome da classe
initialize
Tipagem
Esttica
Dinmica
Condies
Expresses lgicas
Tudo verdadeiro,
exceto false e nil
Sobrescrita
Apenas mtodos
Mtodos e operadores
Encapsulamento
Classes encapsuladas
Classes abertas
DIFERENAS DA LINGUAGEM
Final de linha
Enums
Char
Acesso de atributos
Nome de mtodos
PRESENA DE RUBY
NO MERCADO
Ruby e suas tecnologias so utilizadas por grandes
corporaes em diversos tipos de aplicaes, destinadas por
exemplo, a telefonia, gerncia de sistemas e redes, portais
corporativos, comrcio eletrnico, redes sociais e at mesmo
robtica.
PRESENA DE RUBY
NO MERCADO
Segundo informao 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 organizaes.
RUBY GEMS
Gerenciador de pacotes de Ruby.
Disponibiliza um formato padro para a distribuio de
programas e bibiliotecas Ruby, so os pacotes denominados
gems.
Tem como fonte padro o seu site oficial (rubygems.org), no
site h espao para desenvolvedores cadastrados
disponibilizarem suas bibiliotecas para toda comunidade.
RUBY ON RAILS
Framework livre de desenvolvimento web. Permite
desenvolvimento rpido e fcil de aplicaes, seguindo o
padro de arquitetura MVC (Model-View-Controller). Tem sido
a maior razo para o sucesso de Ruby na web.
JRUBY
Implementao da linguagem Ruby para plataforma Java
UTILIZAO DE JAVA
COMO PLATAFORMA
REFERNCIAS
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-railsit-is-dead-heat.html
http://jruby.org/
http://rubyonrails.com.br
http://rubygems.org/
http://www.youtube.com/watch?v=5b3qd2VMLws