《Effective Ruby 改善Ruby程序的48条建议》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:(美)彼得J.琼斯(PeterJ.Jones)著;刘璐,杨政权,秦五一,孟繁超译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2016
  • ISBN:9787111521242
  • 页数:184 页
图书介绍:本书介绍了改善Ruby程序的48条建议,帮助你编写出易维护且运行快速的Ruby应用程序。它是一本任何Ruby程序员都该读的书。初学者可以学习书中的最佳实践,从而更好地认识这门语言,有经验的开发者也可以再次审读自己的程序,参考书中介绍的诸多方法进行改进。

第1章 让自己熟悉Ruby 1

第1条:理解Ruby中的True 1

第2条:所有对象的值都可能为nil 3

第3条:避免使用Ruby中古怪的Perl风格语法 5

第4条:留神,常量是可变的 8

第5条:留意运行时警告 11

第2章 类、对象和模块 15

第6条:了解Ruby如何构建继承体系 16

第7条:了解super的不同行为 21

第8条:初始化子类时调用super 25

第9条:提防Ruby最棘手的解析 28

第10条:推荐使用Struct而非Hash存储结构化数据 31

第11条:通过在模块中嵌入代码来创建命名空间 34

第12条:理解等价的不同用法 38

第13条:通过“〈=〉”操作符实现比较和比较模块 44

第14条:通过protected方法共享私有状态 48

第15条:优先使用实例变量而非类变量 50

第3章 集合 54

第16条:在改变作为参数的集合之前复制它们 55

第17条:使用Array方法将nil及标量对象转换成数组 58

第18条:考虑使用集合高效检查元素的包含性 61

第19条:了解如何通过reduce方法折叠集合 65

第20条:考虑使用默认哈希值 69

第21条:对集合优先使用委托而非继承 73

第4章 异常 79

第22条:使用定制的异常而不是抛出字符串 79

第23条:捕获可能的最具体的异常 84

第24条:通过块和ensure管理资源 87

第25条:通过临近的end退出ensure语句 90

第26条:限制retry次数,改变重试频率并记录异常信息 94

第27条:throw比raise更适合用来跳出作用域 96

第5章 元编程 99

第28条:熟悉Ruby模块和类的钩子方法 99

第29条:在类的钩子方法中执行super方法 105

第30条:推荐使用define_method而非method_missing 107

第31条:了解不同类型的eval间的差异 113

第32条:慎用猴子补丁 118

第33条:使用别名链执行被修改的方法 123

第34条:支持多种Proc参数数量 126

第35条:使用模块前置时请谨慎思考 130

第6章 测试 133

第36条:熟悉单元测试工具MiniTest 133

第37条:熟悉MiniTest的需求测试 137

第38条:使用Mock模拟特定对象 139

第39条:力争代码被有效测试过 143

第7章 工具与库 149

第40条:学会使用Ruby文档 149

第41条:认识IRB的高级特性 152

第42条:用Bundler管理Gem依赖 155

第43条:为Gem依赖设定版本上限 159

第8章 内存管理与性能 163

第44条:熟悉Ruby的垃圾收集器 163

第45条:用Finalizer构建资源安全网 168

第46条:认识Ruby性能分析工具 171

第47条:避免在循环中使用对象字面量 177

第48条:考虑记忆化大开销计算 179

后记 182