墨海书舟 -Ruby原理剖析( 货号:756802262)
本书资料更新时间:2025-01-20 20:01:18

Ruby原理剖析( 货号:756802262) 下载 pdf 百度网盘 epub 免费 2025 电子书 mobi 在线

Ruby原理剖析( 货号:756802262)精美图片
》Ruby原理剖析( 货号:756802262)电子书籍版权问题 请点击这里查看《

Ruby原理剖析( 货号:756802262)书籍详细信息

  • ISBN:9787568022620
  • 作者:暂无作者
  • 出版社:暂无出版社
  • 出版时间:2016-10
  • 页数:380
  • 价格:78.80
  • 纸张:胶版纸
  • 装帧:平装-胶订
  • 开本:16开
  • 语言:未知
  • 丛书:暂无丛书
  • TAG:暂无
  • 豆瓣评分:暂无豆瓣评分
  • 豆瓣短评:点击查看
  • 豆瓣讨论:点击查看
  • 豆瓣目录:点击查看
  • 读书笔记:点击查看
  • 原文摘录:点击查看
  • 更新时间:2025-01-20 20:01:18

内容简介:

基本信息

商品名称: Ruby原理剖析

出版社: 华中科技大学出版社

出版时间:2016-10-01

作者:帕特里克.肖内西

译者:

开本: 32开

定价: 78.80

页数:

印次: 1

ISBN号:9787568022620

商品类型:图书

版次: 1 内容提要

《Ruby原理剖析》解开Ruby编程语言的魔法面纱。全书图文并茂、深入浅出地剖析了Ruby编程语言的核心工作原理。作者本着科学实证的精神,设计了一系列实验,帮助读者轻松了解这门编程语言的工作奥秘,包括Ruby如何用虚拟机执行代码,Ruby的垃圾回收算法,以及类和模块在Ruby内部的关系等。

n


书籍目录:

目录

1 分词与语法解析 3

n

1.1 词条:构成Ruby语言的单词 5

n

1.2 语法解析:Ruby如何理解代码 13

n

1.2.1 理解LALR解析算法 14

n

1.2.2 真实的Ruby语法规则 21

n

1.3 总结 31

n

2 编译 33

n

2.1 Ruby 1.8没有编译器 34

n

2.2 Ruby 1.9和Ruby 2.0引入了编译器 35

n

2.3 Ruby如何编译简单脚本 37

n

2.4 编译块调用 41

n

2.5 本地表 49

n

2.5.1 编译可选参数 52

n

2.5.2 编译关键字参数 53

n

2.6 总结 57

n

3 Ruby如何执行代码 59

n

3.1 YARV内部栈和Ruby调用栈 60

n

3.1.1 逐句查看Ruby如何执行简单脚本 62

n

3.1.2 执行块调用 65

n

3.2 访问Ruby变量的两种方式 72

n

3.2.1 本地变量访问 72

n

3.2.2 方法参数被看成本地变量 75

n

3.2.3 动态变量访问 76

n

3.3 总结 86

n

4 控制结构与方法调度 89

n

4.1 Ruby如何执行if语句 90

n

4.2 作用域之间的跳转 93

n

4.2.1 捕获表 94

n

4.2.2 捕获表的其他用途 96

n

4.3 send指令:RubyZ复杂的控制结构 99

n

4.3.1 方法查找和方法调度 99

n

4.3.2 Ruby方法的11种类型 100

n

4.4 调用普通Ruby方法 102

n

4.4.1 为普通Ruby方法准备参数 103

n

4.5 调用内建的Ruby方法 104

n

4.5.1 调用attr_reader和attr_writer 105

n

4.5.2 方法调度优化attr_reader和attr_writer 106

n

4.6 总结 110

n

5 对象与类 113

n

5.1 Ruby对象内部 114

n

5.1.1 检验klass和ivptr 115

n

5.1.2 观察同一个类的两个实例 117

n

5.1.3 基本类型对象 118

n

5.1.4 简单立即值完全不需要结构体 119

n

5.1.5 基本类型对象有实例变量吗 120

n

5.1.6 基本类型对象的实例变量保存在哪里 122

n

5.2 RClass结构体内部有什么 125

n

5.2.1 继承 128

n

5.2.2 类实例变量vs类变量 129

n

5.2.3 存取类变量 131

n

5.2.4 常量 134

n

5.2.5 真实的RClass结构体 135

n

5.3 总结 140

n

6 方法查找和常量查找 143

n

6.1 Ruby如何实现模块 145

n

6.1.1 模块是类 145

n

6.1.2 将模块include到类中 147

n

6.2 Ruby的方法查找算法 148

n

6.2.1 方法查找示例 149

n

6.2.2 方法查找算法实践 151

n

6.2.3 Ruby中的多继承 152

n

6.2.4 全局方法缓存 153

n

6.2.5 内联方法缓存 154

n

6.2.6 清空Ruby的方法缓存 155

n

6.2.7 在同一个类中include两个模块 155

n

6.2.8 在模块中include模块 157

n

6.2.9 Module#prepend 示例 158

n

6.2.10 Ruby如何实现Module#prepend 161

n

6.2.11 在已被include的模块中增加方法 164

n

6.2.12 在已被include的模块中include其他模块 164

n

6.2.13 “被include的类”与原始模块共享方法表 166

n

6.3 常量查找 168

n

6.3.1 在超类中查找常量 169

n

6.3.2 Ruby如何在父J命名空间中查找常量 170

n

6.4 Ruby中的词法作用域 171

n

6.4.1 为新类或模块创建常量 172

n

6.4.2 在父命名空间中使用词法作用域查找常量 173

n

6.4.3 Ruby的常量查找算法 175

n

6.4.4 Ruby真实的常量查找算法 177

n

6.5 总结 178

n

7 散列表:Ruby内部的主力军 181

n

7.1 Ruby中的散列表 182

n

7.1.1 在散列表中保存值 183

n

7.1.2 从散列表中检索值 185

n

7.2 散列表如何扩展以容纳更多的值 188

n

7.2.1 散列冲突 188

n

7.2.2 重新散列条目 189

n

7.3 Ruby如何实现散列函数 195

n

7.3.1 Ruby 2.0中的散列优化 202

n

7.4 总结 203

n

8 Ruby如何借鉴Lisp几十年前的理念 207

n

8.1 块: Ruby中的闭包 208

n

8.1.1 Ruby如何调用块 210

n

8.1.2 借用1975年的理念 212

n

8.2 Lambda和Proc:把函数当做一等公民 219

n

8.2.1 栈内存vs堆内存 220

n

8.2.2 深入探索Ruby如何保存字符串的值 220

n

8.2.3 Ruby如何创建Lambda 223

n

8.2.4 Ruby如何调用Lambda 226

n

8.2.5 Proc对象 227

n

8.2.6 在同一个作用域中多次调用lambda 232

n

8.3 总结 234

n

9 元编程 237

n

9.1 定义方法的多种方式 239

n

9.1.1 Ruby的普通方法定义过程 239

n

9.1.2 使用对象前缀定义类方法 241

n

9.1.3 使用新的词法作用域定义类方法 242

n

9.1.4 使用单类定义方法 244

n

9.1.5 在单类的词法作用域中定义方法 245

n

9.1.6 创建Refinement 246

n

9.1.7 使用Refinement 248

n

9.1.8 顶J作用域中的self 250

n

9.1.9 类作用域中的self 251

n

9.1.10 元类作用域中的self 252

n

9.1.11 类方法中的self 253

n

9.2 元编程与闭包:eval、instance_eval和binding 255

n

9.2.1 能写代码的代码 255

n

9.2.2 使用binding参数调用eval 257

n

9.2.3 instance_eval示例 259

n

9.2.4 Ruby闭包的另一个重点 260

n

9.2.5 instance_eval改变接收者的self 262

n

9.2.6 instance_eval为新的词法作用域创建单类 262

n

9.2.7 使用define_method 266

n

9.2.8 充当闭包的方法 266

n

9.3 总结 268

n

10 JRuby:基于JVM的Ruby 271

n

10.1 使用MRI和JRuby运行程序 272

n

10.1.1 JRuby如何解析和编译代码 274

n

10.1.2 JRuby如何执行代码 276

n

10.1.3 用Java类实现Ruby类 278

n

10.1.4 使用-J-XX:+PrintCompilation选项 281

n

10.1.5 JIT是否提升了JRuby程序的性能 283

n

10.2 JRuby和MRI中的字符串 284

n

10.2.1 JRuby和MRI如何保存字符串数据 284

n

10.2.2 写时复制 286

n

10.2.3 创建唯一且非共享的字符串 288

n

10.2.4 可视化写时复制 290

n

10.2.5 修改共享字符串更慢 291

n

10.3 总结 293

n

11 Rubinius:用Ruby实现的Ruby 295

n

11.1 Rubinius内核和虚拟机 296

n

11.1.1 词法分析和解析 298

n

11.1.2 使用Ruby编译Ruby 299

n

11.1.3 Rubinius字节码指令 300

n

11.1.4 Ruby和C++一起工作 302

n

11.1.5 使用C++对象实现Ruby对象 303

n

11.1.6 Rubinius中的(栈)回溯 305

n

11.2 Rubinius和MRI中的数组 307

n

11.2.1 MRI中的数组 307

n

11.2.2 Rubinius中的数组 309

n

11.2.3 阅读Array#shift源码 311

n

11.2.4 修改Array#shift方法 312

n

11.3 总结 315

n

12 MRI、JRuby、Rubinius垃圾回收 317

n

12.1 垃圾回收器解决三个问题 319

n

12.2 MRI中的垃圾回收: 标记与清除 320

n

12.2.1 空闲列表 320

n

12.2.2 标记 321

n

12.2.3 MRI如何标记存活对象 323

n

12.2.4 清除 323

n

12.2.5 延迟清除 324

n

12.2.6 标记-清除的缺点 325

n

12.2.7 观察MRI执行延迟清除 327

n

12.2.8 观察MRI执行全回收 328

n

12.2.9 解读GC分析报告 329

n

12.3 JRuby和Rubinius中的垃圾回收 332

n

12.4 复制垃圾回收 333

n

12.4.1 碰撞分配 333

n

12.4.2 半空间算法 334

n

12.4.3 伊甸堆 336

n

12.5 分代垃圾回收 337

n

12.5.1 弱代假说 337

n

12.5.2 为新生代使用半空间算法 338

n

12.5.3 晋升对象 338

n

12.5.4 成熟代对象垃圾回收 339

n

12.6 并发垃圾回收 341

n

12.6.1 当对象图改变时进行标记 341

n

12.6.2 三色标记 343

n

12.6.3 JVM中的三种垃圾收集器 344

n

12.6.4 触发主收集 347

n

12.7 延伸阅读 348

n

12.8 总结 349

n

索引 351

n


作者介绍:

作者简介

Patrick Shaughnessy是著名的Ruby开发者,目前在麦肯锡管理咨询公司(McKinsey & Co.)从事开发工作。Patrick有20多年软件开发工作经验,精通C、Java、PHP、Ruby等多种编程语言。他是Ruby Conference Circuit的主持人,定期在Ruby Weekly电子报、Ruby5 Podcast和The Ruby Show上发表文章和演讲。他的博客地址: http://patshaughnessy.net


出版社信息:

暂无出版社相关信息,正在全力查找中!


书籍摘录:

暂无相关书籍摘录,正在全力查找中!


在线阅读/听书/购买/PDF下载地址:


原文赏析:

实例变量的名字被保存在对象的类中,因为同一个类的所有实例变量的名字都是相同的


其它内容:

书籍介绍

《Ruby原理剖析》解开Ruby编程语言的魔法面纱。全书图文并茂、深入浅出地剖析了Ruby编程语言的核心工作原理。作者本着科学实证的精神,设计了一系列实验,帮助读者轻松了解这门编程语言的工作奥秘,包括Ruby如何用虚拟机执行代码,Ruby的垃圾回收算法,以及类和模块在Ruby内部的关系等。


书籍真实打分

  • 故事情节:6分

  • 人物塑造:9分

  • 主题深度:8分

  • 文字风格:7分

  • 语言运用:5分

  • 文笔流畅:8分

  • 思想传递:7分

  • 知识深度:5分

  • 知识广度:4分

  • 实用性:4分

  • 章节划分:9分

  • 结构布局:3分

  • 新颖与独特:5分

  • 情感共鸣:6分

  • 引人入胜:8分

  • 现实相关:5分

  • 沉浸感:7分

  • 事实准确性:7分

  • 文化贡献:3分


网站评分

  • 书籍多样性:3分

  • 书籍信息完全性:7分

  • 网站更新速度:8分

  • 使用便利性:9分

  • 书籍清晰度:7分

  • 书籍格式兼容性:5分

  • 是否包含广告:7分

  • 加载速度:3分

  • 安全性:3分

  • 稳定性:6分

  • 搜索功能:8分

  • 下载便捷性:7分


下载点评

  • 少量广告(393+)
  • 种类多(421+)
  • 差评少(379+)
  • 好评多(179+)
  • 体验满分(301+)
  • 实惠(191+)
  • 书籍完整(670+)

下载评价

  • 网友 冯***卉: ( 2025-01-13 03:01:23 )

    听说内置一千多万的书籍,不知道真假的

  • 网友 田***珊: ( 2025-01-09 09:06:21 )

    可以就是有些书搜不到

  • 网友 石***烟: ( 2024-12-22 17:58:40 )

    还可以吧,毕竟也是要成本的,付费应该的,更何况下载速度还挺快的

  • 网友 利***巧: ( 2025-01-14 14:40:18 )

    差评。这个是收费的

  • 网友 后***之: ( 2025-01-04 06:10:51 )

    强烈推荐!无论下载速度还是书籍内容都没话说 真的很良心!

  • 网友 温***欣: ( 2025-01-03 03:30:08 )

    可以可以可以

  • 网友 隗***杉: ( 2025-01-08 11:06:35 )

    挺好的,还好看!支持!快下载吧!

  • 网友 常***翠: ( 2024-12-30 14:16:54 )

    哈哈哈哈哈哈

  • 网友 孙***美: ( 2024-12-28 20:38:13 )

    加油!支持一下!不错,好用。大家可以去试一下哦

  • 网友 堵***格: ( 2025-01-18 19:59:51 )

    OK,还可以

  • 网友 康***溪: ( 2024-12-21 13:47:35 )

    强烈推荐!!!

  • 网友 訾***雰: ( 2024-12-23 06:21:51 )

    下载速度很快,我选择的是epub格式

  • 网友 饶***丽: ( 2025-01-08 15:03:30 )

    下载方式特简单,一直点就好了。

  • 网友 师***怡: ( 2025-01-11 17:55:42 )

    说的好不如用的好,真心很好。越来越完美

  • 网友 谢***灵: ( 2025-01-10 19:34:07 )

    推荐,啥格式都有

  • 网友 师***怀: ( 2025-01-05 15:00:47 )

    好是好,要是能免费下就好了


随机推荐