Rabbit Slide Show

A investigative report of refinements

2014-09-21

Description

RubyHiroba 2014 で発表した、Refinements についての LT 資料です

Text

Page: 1

yancya には 
Refinements が
わからぬ
A investigative report of 
refinements  
yancya
RubyHiroba 2014
2014/09/21
Powered by Rabbit 2.1.3 and COZMIXNG

Page: 2

自⼰紹介
@yancya

Page: 3

オープンクラス
特徴的な Ruby の機能
            
                     
              
            
     
                   
          
            
     
   

Page: 4

オープンクラス
                       
                                     
                   
                                     
                           
                                    
                       
                                    

Page: 5

オープンクラス
こんなモンキーパッチばかり
していると、プログラマがク
ラスを信じられなくなってし
まうぞ

Page: 6

オープンクラス
こんなモンキーパッチばかり
していると、プログラマがク
ラスを信じられなくなってし
まうぞ
yancya は「気をつける」の
が苦⼿だろ

Page: 7

Refinements
スコープを限定してモンキー
パッチする仕組みがあるんだ
ぞ
                        
               
                  
                
              
       
            
              
       
     
   

Page: 8

Refinements
using 以降の、同⼀ファイル
内のコードにのみ、影響する
んだ
                            
              
                       
                                     
                           
                                    

Page: 9

⾊々試してみよう
              
                   
                                   
          
                       
                                                     
                                
            

Page: 10

そ、そんなはずは
              
      
                 
        
                  
                       
                       

Page: 11

何が悪いのか
&:symbol っ
て、:symbol.to̲proc.call
(arg) と同じだったような

Page: 12

to̲proc, send
やはり...
              
                    
                                    
                           
                                       

Page: 13

気をつける
メソッドが、どこのスコープ
で実⾏されるのか、きちんと
気をつけないとダメ
send などのメタプログラミ
ングメソッドを使うと、スコ
ープがファイル外へすっ⾶ん
でいってしまうことがあるの
で

Page: 14

結論
yancya に Refinements 
は、まだ早すぎる
気をつけなくてもキチンと書
けるようになるか、そういう
仕組みを作るしかない
もうちょっと勉強してから出
直してこよう
Powered by Rabbit 2.1.3 and COZMIXNG

Other slides