=begin
Meta Programming Ruby :Ruby元編程語言。
我們在搜索下“元編程”,就會知道,這個不是一個新的東西,通常元編程被認爲是通過程序來生成程序。
這裏就不多介紹她的概念了。我們下面來介紹下Ruby的元編程。
Ruby元編程:在運行時動態的操作語言結構(類 模塊 實例變量等)技術。你可以不用重啓程序,在中途輸入新的Ruby代碼就可以執行。
有人會這樣說過:“all Ruby code is executed code–there is no separate compile or runtime phase.In Ruby, every line of code is executed against a particular ”
換成我的理解:就是說所有ruby代碼在ruby代碼執行的過程中,是沒有沒有單獨的編譯或運行階段. 在Ruby中,每一行代碼是對一個特定對象的執行的。
Ruby的元編程可以通俗的說成,使用代碼生成代碼。
在Ruby中,元編程的使用變得相當的簡單和容易實現,使用Ruby語言本身來產生Ruby代碼,
不需要藉助外部的工具,著名的RoR框架就是建立在Ruby元編程的基礎上的。
可能你對元編程還沒什麼概念,但是Ruby已經內建了元編程這種機制,
所以很有可能,你在不知不覺中就已經使用了Ruby元編程技術爲你帶來的方便之處。
在Ruby中,最常用的就是attr系列方法,譬如attr、attr_reader、attr_writer、attr_accessor。
attr_reader方法爲一個實例變量產生一個用於讀取其值的方法,
attr_writer爲其產生一個用於寫入值的方法,
attr_accessor則同時具有這兩種功能
例如:
class Test_meta
attr_reader :meta_name # 元編程的使用
end
=end
Ruby 元編程 一點認知
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.