最後に必ず実行するメソッドを実行し忘れ防止
CSV#open みたいにclose処理を内包しているような書き方。
class Mover def initialize(from: , to: , &blick) @from = from @to = to yield(self) save end def playeds @from = @from + "適当" end def favorites @from = @from + "j" end def save puts "hey siri" end end
Mover.new(from: "2", to: "1") do |m| m.favorites m.playeds end Mover.new(from: "2", to: "1") do |m| m.favorites end
お約束な的な命令が必須な使い方になっている場合は、書き忘れによってバグを生みやすいしのでこういうの使っていきたい。