本次參賽的內容將分為2部曲:
前半部:分享 “Metaprogramming Ruby” 書中的觀念及綜合網路上的相關資訊,探討Ruby裡的黑魔法。
後半部:實作 Rail 相關的主題
Dynamic Methods "Where you learn how to call and define methods dynamicall...
Defining Methods Dynamically " Dynamic method is the technique of defining...
還記得幾天前提過的 "method lookup" 嗎?有沒有想過當不存在的方法被呼叫時,Ruby 的方法查詢流程是會變得怎麼樣呢?今天就要...
"Blocks are powerful tool for controlling scope, meaning which variables a...
Scope Gates Scope gate 可以想像為柵欄,因為柵欄讓作用域分隔兩邊的變數既不看見彼此,也無法互通。在 Ruby 裡有三個主要的 scope...
" Blocks are used for passing blocks of code to methods, and procs and lam...
"Where you learn another way to mix code and bindings at will" from M...
Around Aliases 在 Ruby 的世界裡,你可以使用 Module#alias_method 幫方法取一個新的別名。從 Ruby 的官方文件可以得知...
What is Refinement ? 還記得 Open Classes 可能會造成的問題嗎?當我們利用開放類別的特性,覆寫了類別內原有的方法,就會造成了全域...
Refinement Wrapper 昨天我們學到了 Refinement 如何利用 using 關鍵字,來控制覆寫方法可影響的範圍。今天要介紹 Refinem...