• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Voodoo é pra Jacu - Entendendo metaprogramação em ruby
 

Voodoo é pra Jacu - Entendendo metaprogramação em ruby

on

  • 3,098 views

Entendendo, de verdade, como funciona metaprogramação em ruby e desmistificando o que normalmente chamam de magia negra.

Entendendo, de verdade, como funciona metaprogramação em ruby e desmistificando o que normalmente chamam de magia negra.

Statistics

Views

Total Views
3,098
Views on SlideShare
2,718
Embed Views
380

Actions

Likes
1
Downloads
10
Comments
0

5 Embeds 380

http://www.davidpaniz.com 363
http://feeds.feedburner.com 9
http://www.slideshare.net 6
http://www.linkedin.com 1
https://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Voodoo é pra Jacu - Entendendo metaprogramação em ruby Voodoo é pra Jacu - Entendendo metaprogramação em ruby Presentation Transcript

  • Voodoo é pra jacu! metaprogramação em ruby Leonardo Bessa David Paniz leonardo.bessa@caelum.com.br david.paniz@caelum.com.br www.davidpaniz.com
  • Que horas são?
  • ## horario.java [java] System.currentTimeMillis(); new Date(); ## horario.rb [ruby] Time.now Date.today
  • Quero voltar ao dia 12/11/1955...
  • Time.now 12/11/1955 "Eu inventei o capacitor de fluxo" Doc (Brown)
  • "I invented the term Object- Oriented, and I can tell you I did not have C++ in mind." - Alan Kay
  • class
  • class
  • Criação de métodos • Que tipo de objeto pode definir um método? • Eu realmente posso adicionar um método a um único objeto? • Onde o método está? • Como eu faria em java?
  • Singleton Class • Também conhecidas como Metaclass, Eigenclass, etc • É uma classe como outra qualquer, mas escondida • Existe uma para cada objeto (lazy)
  • Qual é a Singleton Class class << self self end
  • Qual é a Singleton Class class Object def singleton_class class << self self end end end