Ruby

472 views

Published on

Quick presentation for Hack Thursday.
http://hackthursday.github.com/

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
472
On SlideShare
0
From Embeds
0
Number of Embeds
57
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ruby

  1. 1. RubyElegância e expressividade
  2. 2. Ruby● Tipo de linguagem● Interpretadores● Sintaxe● Objetos & Mensagens● Features● Tools● Rack● Rails● Sinatra
  3. 3. Ruby - Interpretadores● MRI - Matzs Ruby Interpreter● YARV - Yet Another Ruby VirtualMachine● Jruby - JVM● Rubinius – Ruby em Ruby● IronRuby - .NET● MacRuby – Objective C
  4. 4. Ruby – Tipo de linguagem● Tipagem Dinâmica● OO● Fortemente tipada● Garbage collection
  5. 5. Ruby - Sintaxe● Constante● ::EscopoGlobal● variavel_local● @variavel_de_objeto● @@variavel_de_class● 2● 2.3● “string #{interpolada}”
  6. 6. Ruby - Sintaxe● :symbol● [1, 2]● { :ola => voce } ou { ola: voce }● raise HelpError unless world.is_safe?● drink while ! beer.nil?● for nerd in @dj_house; nerd.eat(meat); end● case; when; default; end● 3.times { puts Hurra! }
  7. 7. Ruby - Sintaxe● 3.times do; puts Hurra!; end● 1..10● Imprimir ímpares de 1 a 20 em ordem inversa
  8. 8. Ruby – Objetos e Mensagens● (Quase) Tudo são objetos.● (Quase) Todas as interações são feitas com troca de mensagens● 1+1● 1.+(1)● 1.send(+, 1)
  9. 9. Ruby – Objetos e Mensagens
  10. 10. Ruby - features● Suporte a introspecção (respond_to)● Redefinição de métodos● Classes abertas● method_missing● Sem overload de métodos● Herança múltipla com mixins● const_missing
  11. 11. Ruby - Tools● Gems● bundle● Webservers ● Thin ● Passenger ● Unicorn ● JVM● RVM e rbenv
  12. 12. Ruby - Rack● Ruby Webserver Interface● API minimalista para os frameworks web● config.ru
  13. 13. Ruby - Rails● MVC● Routing● Middleware● Migrations● Helpers
  14. 14. Ruby - Sinatra● DSL para aplicações web● Views ● haml :index● Helpers ● enable :sessions

×