Ruby 元編程 一點認知

=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


發佈了53 篇原創文章 · 獲贊 9 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章