メタプログラミングRuby
Amazon.co.jpで買う
正誤情報
詳細情報
メタプログラミングRuby
Paolo Perrotta 著、 角征典 訳
定価:3,024円 (本体2,800円)
発売日:2010年8月31日
形態:B5変 (312ページ)
ISBN:978-4-04-868715-7
内容
メタプログラミングの魔法を身につけよう!
メタプログラミングは強力なRubyの機能ですが、習得が難しいと言われていました。本書はメタプログラミングに必要なすべての概念を明確に、平易に解説。Rubyの最も複雑な秘伝を簡単に身につけましょう。
著者
Paolo Perrotta
Paolo Perrottaは、ソフトウェアの設計・開発に10年以上携わっており、これまでに数百もの技術記事を執筆している。Rubyと恋に落ちる前は、Java、C++、C#を使っていた。アジャイル方法論・プラクティス・テクニックの早期導入者であり、インターネットファッション企業であるYoox社において、アジャイルチームのコーチを務めている。また、ヨーロッパ各地で開発者の教育も行っている。出張がないときは、彼女と猫と一緒に暮らすイタリアの自宅でRubyに没頭している。
これもオススメ
リファクタリング:Rubyエディション
JavaプログラマのためのRuby入門
エキスパートPythonプログラミング
目次
序文
謝辞
はじめに
本書について
謝辞
イントロダクション
頭文字M
本書について
想定読者

第1部 メタプログラミングRuby
第1章 月曜日:オブジェクトモデル
1.1 ビルと一緒の月曜日
1.2 オープンクラス
1.3 クラスの真実
1.4 クイズ:引かれていない線
1.5 メソッドを呼び出すときに何が起きているの?
1.6 クイズ:絡み合ったモジュール
1.7 オブジェクトモデルのまとめ
第2章 火曜日:メソッド
2.1 重複問題
2.2 動的メソッド
2.3 method_missing()
2.4 クイズ:バグ退治
2.5 もっとmethod_missing()
第3章 水曜日:ブロック
3.1 水曜日の過ごし方
3.2 クイズ:Ruby#
3.3 クロージャ
3.4 instance_eval()
3.5 呼び出し可能オブジェクト
3.6 ドメイン特化言語を書く
3.7 クイズ:より良いDSL
第4章 木曜日:クラス定義
4.1 クラス定義のわかりやすい説明
4.2 クイズ:クラスのタブー
4.3 特異メソッド
4.4 特異クラス
4.5 クイズ:モジュールの不具合
4.6 エイリアス
4.7 クイズ:壊れた計算
第5章 金曜日:コードを記述するコード
5.1 道案内
5.2 Kernel#eval
5.3 クイズ:属性のチェック(手順1)
5.4 クイズ:属性のチェック(手順2)
5.5 クイズ:属性のチェック(手順3)
5.6 クイズ:属性のチェック(手順4)
5.7 フックメソッド
5.8 クイズ:属性のチェック(手順5)
第6章 エピローグ

第2部 Railsにおけるメタプログラミング
第7章 ActiveRecordの設計
7.1 観光ツアーの準備
7.2 ActiveRecordの設計
7.3 学んだ教訓
第8章 ActiveRecordの中身
8.1 動的属性
8.2 動的ファインダ
8.3 ここで学んだこと
第9章 安全なメタプログラミング
9.1 メタプログラミングのテスト
9.2 モンキーパッチを防ぐ
9.3 学んだこと

第3部 付録
付録A よく使うイディオム
A.1 ミミックメソッド
A.2 nilガード
A.3 メソッド引数のトリック
A.4 自己yield
A.5 Symbol#to_proc()
付録B ドメイン特化言語
B.1 ドメイン特化言語の事例
B.2 内部DSLと外部DSL
B.3 DSLとメタプログラミング
付録C 魔術書
C.1 魔術
付録D 参考書
付録E から騒ぎ
E.1 Nullオブジェクト
E.2 Rubyの強みを活かす
E.3 Nullオブジェクトの向こう側
著者・訳者紹介
索引


戻る
©KADOKAWA CORPORATION 2015