SlideShare uma empresa Scribd logo
1 de 16
Ruby
Uma Linguagem Divertida
              Weverton Gomes
             @wevertongomes
       facebook.com/wevertongomes
      linkedin.com/in/wevertongomes
    Tecnólogo em Redes de Comunicação
  Arquiteto de Software na Tron Informática
      Desenvolvedor Delphi, C# e Rails
       Entusiasta de novas tecnologias
História sempre é bom
• Criada em 1993 por Yukihiro Matsumoto
  (Matz)
• Inspirada em Python, Smalltalk, Eiffel, Ada e
  Lisp
• Primeira versão liberada em 1995
• Adoção crescente a partir de 2005 com a
  ascensão do RubyOnRails
Características
•   Linguagem dinâmica
•   Fortemente tipada
•   Totalmente OO
•   Simula herança múltipla
•   CoC
•   DRY
•   KISS
Métodos
•   Isso não te pertence mais!!
•   O esquema agora é mensagem
•   Parênteses são opcionais
•   Parâmetros opcionais
•   E o retorno?
Tipos Básicos
•   FixNum, BigNum e Float
•   String – com ‘ ou “
•   Symbol
•   Array
•   Hash
•   Regexp
Convenções de Código
Operadores
•   +, -, /, *, %, **
•   +=, -=, *=, /=
•   =~, !~
•   ==, !=, <, >, <=, >=, <=>
•   &, |, ^, ~
•   and, or, not, &&, ||, !
•   ?:
•   .., ...
Classes
• Método initialize
• attr_reader
• attr_accessor
Plugins
• Conhecidos como Gems
• Gerenciador do pacotes
DEMOS
Ruby On Rails
Características
• Framework MVC pra Web
• Composto por várias gems:
  – ActiveRecord
  – ActiveModel
  – ActiveResource
  – ActionController
  – ActionView
  – ActionMailer
DEMO
Empresas que usam
•   Amazon.com
•   BBC
•   EA
•   NASA
•   Oracle
•   Cisco
•   ThoughtWorks
•   Yahoo!
•   etc...
Links
•   www.ruby-lang.org/en
•   www.rubyonrails.org
•   www.akitaonrails.com
•   www.37signals.com
DÚVIDAS??
• Muito obrigado!!


                weverton@gmail.com
                @wevertongomes
                facebook.com/wevertongomes
                linkedin.com/in/wevertongomes

Mais conteúdo relacionado

Semelhante a Introdução ao Ruby

Minicurso Ruby e Rails (RailsMG UNA)
Minicurso Ruby e Rails (RailsMG UNA)Minicurso Ruby e Rails (RailsMG UNA)
Minicurso Ruby e Rails (RailsMG UNA)Daniel Lopes
 
Desenvolvimento Web com RubyOnRails
Desenvolvimento Web com RubyOnRailsDesenvolvimento Web com RubyOnRails
Desenvolvimento Web com RubyOnRailsRoberto Soares
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHPRangel Javier
 
Python - Programando em alto nível
Python - Programando em alto nívelPython - Programando em alto nível
Python - Programando em alto nívelIgor Sobreira
 
Desenvolvimento Ágil com Ruby on Rails
Desenvolvimento Ágil com Ruby on RailsDesenvolvimento Ágil com Ruby on Rails
Desenvolvimento Ágil com Ruby on RailsRogerio Chaves
 
Introdução ao Rails (Linguagil)
Introdução ao Rails (Linguagil)Introdução ao Rails (Linguagil)
Introdução ao Rails (Linguagil)Daniel Lopes
 
Esta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com RailsEsta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com Railsismaelstahelin
 
Carreira de Desenvolvimento
Carreira de DesenvolvimentoCarreira de Desenvolvimento
Carreira de DesenvolvimentoAlvaro Viebrantz
 
Palestra ror edted
Palestra ror edtedPalestra ror edted
Palestra ror edtedbrunoaalves
 
Ruby On Rails : Produtividade, Agilidade, Apenas uma Ferramenta?
Ruby On Rails :  Produtividade, Agilidade, Apenas uma Ferramenta?Ruby On Rails :  Produtividade, Agilidade, Apenas uma Ferramenta?
Ruby On Rails : Produtividade, Agilidade, Apenas uma Ferramenta?Rodrigo Urubatan
 
Python mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internetPython mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internetMarcos Petry
 
Python mudando o modo de desenvolver para a web - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web  - Marcos Daniel PetryPython mudando o modo de desenvolver para a web  - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web - Marcos Daniel PetryTchelinux
 
Aprensentacao oo-trincheiras
Aprensentacao oo-trincheirasAprensentacao oo-trincheiras
Aprensentacao oo-trincheirasHigor César
 
Introdução ao php
Introdução ao phpIntrodução ao php
Introdução ao phpMiguel Pinto
 
Frameworks Opensource: ferramentas para desenvolvimento rápido de aplicações Web
Frameworks Opensource: ferramentas para desenvolvimento rápido de aplicações WebFrameworks Opensource: ferramentas para desenvolvimento rápido de aplicações Web
Frameworks Opensource: ferramentas para desenvolvimento rápido de aplicações WebJairo Junior
 
Desenvolvimento para web com Meteor
Desenvolvimento para web com MeteorDesenvolvimento para web com Meteor
Desenvolvimento para web com MeteorWeverton Gomes
 
Desenvolvendo Sistema Cloud e Web Full-stack Developer
Desenvolvendo Sistema Cloud e Web Full-stack DeveloperDesenvolvendo Sistema Cloud e Web Full-stack Developer
Desenvolvendo Sistema Cloud e Web Full-stack DeveloperCesar Romero
 

Semelhante a Introdução ao Ruby (20)

Minicurso Ruby e Rails (RailsMG UNA)
Minicurso Ruby e Rails (RailsMG UNA)Minicurso Ruby e Rails (RailsMG UNA)
Minicurso Ruby e Rails (RailsMG UNA)
 
Desenvolvimento Web com RubyOnRails
Desenvolvimento Web com RubyOnRailsDesenvolvimento Web com RubyOnRails
Desenvolvimento Web com RubyOnRails
 
Slide Aula - Curso CakePHP
Slide Aula - Curso CakePHPSlide Aula - Curso CakePHP
Slide Aula - Curso CakePHP
 
Python - Programando em alto nível
Python - Programando em alto nívelPython - Programando em alto nível
Python - Programando em alto nível
 
Desenvolvimento Ágil com Ruby on Rails
Desenvolvimento Ágil com Ruby on RailsDesenvolvimento Ágil com Ruby on Rails
Desenvolvimento Ágil com Ruby on Rails
 
Introdução ao Rails (Linguagil)
Introdução ao Rails (Linguagil)Introdução ao Rails (Linguagil)
Introdução ao Rails (Linguagil)
 
Esta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com RailsEsta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com Rails
 
Carreira de Desenvolvimento
Carreira de DesenvolvimentoCarreira de Desenvolvimento
Carreira de Desenvolvimento
 
Palestra ror edted
Palestra ror edtedPalestra ror edted
Palestra ror edted
 
Ruby On Rails : Produtividade, Agilidade, Apenas uma Ferramenta?
Ruby On Rails :  Produtividade, Agilidade, Apenas uma Ferramenta?Ruby On Rails :  Produtividade, Agilidade, Apenas uma Ferramenta?
Ruby On Rails : Produtividade, Agilidade, Apenas uma Ferramenta?
 
Python mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internetPython mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internet
 
Python mudando o modo de desenvolver para a web - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web  - Marcos Daniel PetryPython mudando o modo de desenvolver para a web  - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web - Marcos Daniel Petry
 
Java virtual machine quantas linguas fala a jvm2
Java virtual machine   quantas linguas fala a jvm2Java virtual machine   quantas linguas fala a jvm2
Java virtual machine quantas linguas fala a jvm2
 
Aprensentacao oo-trincheiras
Aprensentacao oo-trincheirasAprensentacao oo-trincheiras
Aprensentacao oo-trincheiras
 
Frameworks PHP
Frameworks PHPFrameworks PHP
Frameworks PHP
 
Introdução ao php
Introdução ao phpIntrodução ao php
Introdução ao php
 
Ruby FTW
Ruby FTWRuby FTW
Ruby FTW
 
Frameworks Opensource: ferramentas para desenvolvimento rápido de aplicações Web
Frameworks Opensource: ferramentas para desenvolvimento rápido de aplicações WebFrameworks Opensource: ferramentas para desenvolvimento rápido de aplicações Web
Frameworks Opensource: ferramentas para desenvolvimento rápido de aplicações Web
 
Desenvolvimento para web com Meteor
Desenvolvimento para web com MeteorDesenvolvimento para web com Meteor
Desenvolvimento para web com Meteor
 
Desenvolvendo Sistema Cloud e Web Full-stack Developer
Desenvolvendo Sistema Cloud e Web Full-stack DeveloperDesenvolvendo Sistema Cloud e Web Full-stack Developer
Desenvolvendo Sistema Cloud e Web Full-stack Developer
 

Introdução ao Ruby

  • 1. Ruby Uma Linguagem Divertida Weverton Gomes @wevertongomes facebook.com/wevertongomes linkedin.com/in/wevertongomes Tecnólogo em Redes de Comunicação Arquiteto de Software na Tron Informática Desenvolvedor Delphi, C# e Rails Entusiasta de novas tecnologias
  • 2. História sempre é bom • Criada em 1993 por Yukihiro Matsumoto (Matz) • Inspirada em Python, Smalltalk, Eiffel, Ada e Lisp • Primeira versão liberada em 1995 • Adoção crescente a partir de 2005 com a ascensão do RubyOnRails
  • 3. Características • Linguagem dinâmica • Fortemente tipada • Totalmente OO • Simula herança múltipla • CoC • DRY • KISS
  • 4. Métodos • Isso não te pertence mais!! • O esquema agora é mensagem • Parênteses são opcionais • Parâmetros opcionais • E o retorno?
  • 5. Tipos Básicos • FixNum, BigNum e Float • String – com ‘ ou “ • Symbol • Array • Hash • Regexp
  • 7. Operadores • +, -, /, *, %, ** • +=, -=, *=, /= • =~, !~ • ==, !=, <, >, <=, >=, <=> • &, |, ^, ~ • and, or, not, &&, ||, ! • ?: • .., ...
  • 8. Classes • Método initialize • attr_reader • attr_accessor
  • 9. Plugins • Conhecidos como Gems • Gerenciador do pacotes
  • 10. DEMOS
  • 12. Características • Framework MVC pra Web • Composto por várias gems: – ActiveRecord – ActiveModel – ActiveResource – ActionController – ActionView – ActionMailer
  • 13. DEMO
  • 14. Empresas que usam • Amazon.com • BBC • EA • NASA • Oracle • Cisco • ThoughtWorks • Yahoo! • etc...
  • 15. Links • www.ruby-lang.org/en • www.rubyonrails.org • www.akitaonrails.com • www.37signals.com
  • 16. DÚVIDAS?? • Muito obrigado!! weverton@gmail.com @wevertongomes facebook.com/wevertongomes linkedin.com/in/wevertongomes