Paolo Perrotta 有超过15年的软件设计和开发经验,他开发过嵌入式软件、企业级软件、计算机游戏和web应用,还发表过上百篇技术文章。他在欧洲各国教授敏捷课程,过着游牧般的生活。
第一部分 Ruby元编程 1
第1章 元这个字眼 3
1.1 鬼城与自由市场 3
1.2 程序员Bob的故事 4
1.3 元编程和Ruby 7
第2章 星期一:对象模型 11
2.1 打开类 11
2.2 类的真相 16
2.3 小测验:缺失的连接线 26
2.4 调用方法时发生了什么? 27
2.5 小测验:混乱的模块 39
2.6 对象模型小结 42
第3章 星期二:方法 45
3.1 代码繁复的问题 46
3.2 动态方法 48
3.3 method_missing方法 55
3.4 小测验:消灭Bug 64
3.5 白板类 66
3.6 小结 69
第4章 星期三:代码块 73
4.1 学习代码块 73
4.2 小测验:Ruby的#符号 75
4.3 代码块是闭包 77
4.4 instance_eval方法 84
4.5 可调用对象 88
4.6 编写领域专属语言(DSL) 96
4.7 小测验:改良的DSL 98
4.8 小结 102
第5章 星期四:类定义 105
5.1 揭秘类定义 106
5.2 小测验:Taboo类 112
5.3 单件方法 113
5.4 单件类 118
5.5 小测验:模块的麻烦 129
5.6 方法包装器 131
5.7 小测验:打破数学规律 136
5.8 小结 137
第6章 星期五:编写代码的代码 139
6.1 通向周末的编程之路 139
6.2 Kernel#eval方法 141
6.3 小测验:校验过的属性(第一步) 150
6.4 小测验:校验过的属性(第二步) 153
6.5 小测验:校验过的属性(第三步) 154
6.6 小测验:校验过的属性(第四步) 156
6.7 钩子方法 157
6.8 小测验:校验过的属性(第五步) 161
6.9 小结 162
第7章 尾声 163
第二部分 Rails中的元编程 165
第8章 准备Rails之旅 167
8.1 Ruby on Rails 167
8.2 安装Rails 168
8.3 Rails源代码 168
第9章 Active Record的设计 171
9.1 简短的Active Record示例 171
9.2 Active Record的组成 172
9.3 经验之谈 176
第10章 Active Support的Concern模块 179
10.1 Concern模块出现之前 179
10.2 ActiveSupport::Concern模块 183
10.3 经验之谈 188
第11章 alias_method_chain方法沉浮录 189
11.1 alias_method_chain方法的兴起 189
11.2 alias_method_chain方法的衰亡 193
11.3 经验之谈 196
第12章 属性方法的发展 199
12.1 属性方法实战 199
12.2 属性方法的发展史 200
12.3 经验之谈 210
第13章 最后的思考 213
元编程不过是编程 213
第三部分 附录 215
附录A 常见惯用法 217
A.1 拟态方法 217
A.2 空指针保护 219
A.3 Self Yield 222
A.4 Symbol#to_proc方法 224
附录B 领域专属语言 227
B.1 关于领域专属语言 227
B.2 内部和外部领域专属语言 229
B.3 领域专属语言和元编程 230
附录C 法术手册 231
索引 243
· · · · · · (
收起)
《Ruby元编程(第2版)》在大量剖析实例代码的基础上循序渐进地介绍Ruby特有的实用编程技巧。通过分析案例、讲解例题、回顾Ruby类库的实现细节,作者不仅向读者展示了元编程的优势及其解决问题的方式,更详细列出33种发挥其优势的编程技巧。本书堪称动态语言设计模式。Ruby之父松本行弘作序推荐。
Ruby元编程(第2版) 下载 mobi epub pdf txt 电子书 格式
评分
☆☆☆☆☆
##学到了,但一遍不够,还得实践才能掌握吧;这本书,能让你更新对Ruby甚至编程的世界观。
评分
☆☆☆☆☆
评分
☆☆☆☆☆
##好多黑魔法
评分
☆☆☆☆☆
##书不厚,但干货很多,更难能可贵的是,这本书还容易读懂,五星推荐
评分
☆☆☆☆☆
评分
☆☆☆☆☆
##需要二刷。
评分
☆☆☆☆☆
##什么叫“元”编程?我的理解就是“编程的编程”。如果你觉得陌生,那么就想想有人第一次告诉你还存在“类型的类型”这个东西。 这本书讲的都是ruby的高级特性。在看之前我其实只有python的经验,对ruby并不熟悉,但我还是在这本书中看到了许多和python相通的东西。 在这本书...
评分
☆☆☆☆☆
##作为一名JavaScript 开发者,在看本书的过程中每看到一个元编程技巧,都会忍不住将两种语言作一番比较和联想:在JavaScript 可以应用这种技巧吗?可以的话,这种技巧应用得广泛吗? 某程度上JavaScript 比Ruby 更灵活,所以大部分技巧在JavaScript 都可以轻松实现。 动态方法 ...
评分
☆☆☆☆☆
##* 图,生动形象;
* 方式,新入职员工历险记,形式新颖;
* 内容,深入浅出,旁征博引;
* 排版,出处注明,跳跃方便,还有 index;