【Ruby】パーフェクトRuby 学習感想文 ~第6章
それでは6章を読んでいきます。
(参考・経緯など)
パーフェクトRuby 学習感想文 ~はじめに
全体的に
6章もすごく読みやすかった!
P230 メタプログラミングとは?
6章から「メタプログラミング」を扱うのですが、
そもそも「メタプログラミング」とは何かの説明がなく。
リフレクションのことかなと思っていたのですが、
以下の種類があるみたい。
- 動的にクラスを生成する
- 動的にメソッドを生成する
- リフレクション
まつもとゆきひろさん曰く、
メタプログラミングとは、プログラミングをプログラミングすることです。
http://itpro.nikkeibp.co.jp/article/COLUMN/20070604/273453/
そうですか。
JavaScriptにも関数渡しがありますが、あれもメタプログラミングの一種なのか。
P242 誤植だと思う
誤: Module#define_method を使用しすれば、
正: Module#define_method を使用すれば、
P242 例がちょっと見づらいのよね・・
6~8章で記載されている例はこういう感じ
class Klass define_method :instance_method, ->{ :instance_method } end
これ、define_methodは本当の組み込み関数名で、instance_methodは例の名前。
ちょっと分かりづらい。
こうやって書いてたら良く分かるんだけどな。。
class Klass define_method :hoge, ->{ :hoge } end
9章の例は下のパターンで書いてあって分かりやすかったです。
著者が違う人なのかな?
P263 誤植だと思う
誤: Refinementsのファイル単位とうい制限が
正: Refinementsのファイル単位という制限が
さくさくと終了。