![]() 作者:Peter cooper 出版社: 机械工业出版社 原作名: Beginning Ruby: From Novice to Professional 译者:仲田 出版年: 2009-2 页数: 381 定价: 59.00元 装帧: 平装 ISBN: 9787111258667 内容简介 · · · · · ·《Ruby从入门到精通》还讲解了Ruby关键内容(如类、对象、项目、模板和程序库)以及Ruby的其他方面(如数据库访问)。另外,《Ruby从入门到精通》深入介绍了Ruby on Rails。《Ruby从入门到精通》附录也提供了重要的参考信息,为经验丰富的程序员提供了Ruby快速入门。 附录部分请到华章网站(WWW.hzbook,com)下载。作为极其流行的Ruby on Rails Web开发框架的底层引擎,Ruby已经广为人知,而它本身是一种极其强大的全能型编程语言。Ruby关注的焦点是减轻开发的负担,以及提供完全的面向对象环境。 《Ruby从入门到精通》是一本彻底而全面的最新指南,适合于各类Ruby读者,不管是编程初学者、Web开发人员,还是Ruby新手。《Ruby从入门到精通》从解说面向对象编程背后的原理开始,只通过几章的讲解,就构造出了真正的... 目录 · · · · · ·译者序序言 前言 致谢 第一篇 基础与脚手架 第1章 让它跑起来:安装Ruby 1 · · · · · ·() 译者序 序言 前言 致谢 第一篇 基础与脚手架 第1章 让它跑起来:安装Ruby 1 1.1 安装Ruby 2 1.1.1 Windows平台 2 1.1.2 Apple Mac OS X平台 4 1.1.3 Linux平台 5 1.1.4 其他平台 7 1.2 小结 8 第2章 编程等于快乐:Ruby和面向对象概览 9 2.1 初始步骤 9 2.1.1 irb:交互式Ruby 9 2.1.2 Ruby是计算机的通用语 10 2.1.3 为什么Ruby是如此杰出的编程语言 10 2.1.4 心灵小径 11 2.2 把思路转变成Ruby代码 13 2.2.1 Ruby怎么理解对象和类的概念 13 2.2.2 造人过程 13 2.2.3 基础变量 15 2.2.4 从人到宠物 15 2.3 一切都是对象 18 2.3.1 Kernel模块的方法 19 2.3.2 向方法传递数据 19 2.3.3 使用String类的方法 20 2.4 以非面向对象方式使用Ruby 21 2.5 小结 22 第3章 Ruby的构造元素:数据、表达式和流程控制 24 3.1 数字与表达式 24 3.1.1 表达式基础知识 24 3.1.2 变量 24 3.1.3 比较运算符与表达式 25 3.1.4 用块和迭代子在数字中循环 27 3.1.5 浮点数 28 3.1.6 常量 29 3.2 文本与字符串 30 3.2.1 字面字符串 30 3.2.2 字符串表达式 31 3.2.3 插写 32 3.2.4 字符串方法 33 3.2.5 正则表达式与字符串操作 34 3.3 数组与列表 38 3.3.1 基本数组 38 3.3.2 字符串切分成数组 40 3.3.3 数组迭代 40 3.3.4 数组的其他方法 41 3.4 散列表 43 3.4.1 散列表的基础方法 43 3.4.2 散列表中的散列表 44 3.5 流程控制 45 3.5.1 if与unless 45 3.5.2 ?:,三元运算符 46 3.5.3 elsif与case 47 3.5.4 while与until 48 3.5.5 代码块 49 3.6 其他有用的构造元素 51 3.6.1 日期与时间 51 3.6.2 大数字 53 3.6.3 范围 54 3.6.4 符号 55 3.6.5 类间转换 56 3.7 小结 57 第4章 开发基础的Ruby应用程序 59 4.1 处理源代码文件 59 4.1.1 创建测试文件 59 4.1.2 测试用源代码文件 60 4.1.3 运行源代码 61 4.2 我们的目标程序:文本分析器 63 4.2.1 基本功能需求 63 4.2.2 构建程序基本框架 64 4.2.3 获取哑文本 64 4.2.4 载入文本文件并统计行数 65 4.2.5 统计字符数 66 4.2.6 统计字数 66 4.2.7 统计句子和段落数 68 4.2.8 计算平均值 69 4.2.9 到目前为止的源代码 69 4.3 增加额外功能 70 4.3.1 “有用”字词的百分比 70 4.3.2 找出“有趣的”句子进行汇总 72 4.3.3 分析text.txt之外的其他文件 73 4.4 完整的程序 74 4.5 小结 76 第5章 Ruby生态系统 77 5.1 Ruby的历史 77 5.1.1 Ruby的起源 77 5.1.2 Ruby的影响 78 5.1.3 向西方流传 78 5.2 Ruby on Rails 80 5.2.1 Rails面世的由来 80 5.2.2 Web (2.0) 是怎样赢的 81 5.3 开源文化 82 5.4 如何获得帮助 83 5.4.1 邮件列表 83 5.4.2 Usenet新闻组 83 5.4.3 因特网中继聊天工具 83 5.4.4 文档 84 5.4.5 论坛 85 5.5 加入社区 85 5.5.1 向别人提供帮助 85 5.5.2 贡献代码 86 5.5.3 网络博客 86 5.6 小结 87 第二篇 Ruby的核心 第6章 类、对象和模块 89 6.1 为什么要用面向对象 89 6.2 面向对象基础知识 92 6.2.1 局部变量、全局变量、对象变量和类变量 92 6.2.2 类方法和对象方法 95 6.2.3 继承 97 6.2.4 覆写现有方法 99 6.2.5 对象方法的反射与发现 101 6.2.6 封装 102 6.2.7 多态 106 6.2.8 嵌套类 107 6.2.9 常量的作用域 108 6.3 模块、命名空间和掺入 109 6.3.1 命名空间 109 6.3.2 掺入 111 6.4 用对象构建“地下城”文本冒险游戏 117 6.4.1 地下城的概念 117 6.4.2 创建初始类 118 6.4.3 Structs:快捷简单的数据类 119 6.4.4 创建房间 121 6.4.5 让地下城运转起来 122 6.5 小结 125 第7章 项目与程序库 127 7.1 项目和使用其他文件的代码 127 7.1.1 基本的文件包含 127 7.1.2 从其他目录包含 129 7.1.3 有条件地包含代码 129 7.1.4 嵌套包含 130 7.2 程序库 130 7.2.1 标准程序库 131 7.2.2 RubyGems包 133 7.3 小结 139 第8章 文档编写、错误处理、调试和测试 140 8.1 文档编写 140 8.1.1 用RDoc生成文档 140 8.1.2 RDoc技术 142 8.2 调试与出错 144 8.2.1 异常和出错处理 145 8.2.2 Catch与Throw方法 147 8.2.3 Ruby调试器 148 8.3 测试 151 8.3.1 测试驱动开发的哲学 151 8.3.2 单元测试 153 8.3.3 更多的Test::Unit断言 154 8.4 性能基准度量和优化分析 155 8.4.1 性能基准简单度量 156 8.4.2 性能优化分析 157 8.5 小结 159 第9章 文件和数据库 161 9.1 输入与输出 161 9.1.1 键盘输入 161 9.1.2 文件输入输出 162 9.2 数据库基础 173 9.2.1 文本文件数据库 174 9.2.2 对象和数据结构的存储 176 9.3 关系型数据库与SQL 179 9.3.1 关系型数据库概念 179 9.3.2 四大数据库:MySQL、PostgreSQL、Oracle和SQLite 180 9.3.3 安装SQLite 180 9.3.4 关于数据库基本操作和SQL的紧急教程 181 9.3.5 在Ruby中使用SQLite 184 9.3.6 连接其他数据库系统 188 9.3.7 ActiveRecord简介 192 9.4 小结 192 第10章 部署Ruby应用和程序库 194 10.1 简单Ruby程序发布 194 10.1.1 shebang行 195 10.1.2 关联Windows的文件类型 196 10.1.3 “编译”Ruby程序 196 10.2 检测Ruby运行环境 197 10.2.1 用RUBY_PLATFORM作简单的操作系统检测 198 10.2.2 环境变量 198 10.2.3 读取命令行参数 200 10.3 以gem包形式发布Ruby程序库 200 10.3.1 创建gem包 201 10.3.2 发布gem包 204 10.3.3 RubyForge网站 204 10.4 以远程服务形式部署Ruby应用 205 10.4.1 CGI脚本 205 10.4.2 常见HTTP服务器 207 10.4.3 远程方法调用 210 10.5 小结 214 第11章 Ruby高级功能 216 11.1 动态代码执行 216 11.1.1 绑定 216 11.1.2 eval的其他形式 217 11.1.3 创建attr_accessor 219 11.2 从Ruby中运行其他程序 220 11.2.1 获得其他程序的运行结果 220 11.2.2 向其他程序移交执行权 221 11.2.3 同时运行两个程序 221 11.2.4 与另一程序交互 222 11.3 安全地掌控数据和危险方法 222 11.3.1 被感染的数据和对象 223 11.3.2 安全级别 224 11.4 使用微软Windows 225 11.4.1 使用Windows API 225 11.4.2 控制Windows程序 227 11.5 线程 228 11.5.1 基础Ruby线程实战 228 11.5.2 高级线程操作 229 11.6 其他语言嵌入Ruby 230 11.6.1 为什么用C作为嵌入语言 231 11.6.2 创建基础方法或函数 231 11.6.3 性能基准度量:C和Ruby 233 11.7 对Unicode和UTF-8的支持 234 11.8 小结 236 第12章 综合演练:开发更大型的Ruby应用 238 12.1 构建机器人小程序 238 12.1.1 什么是机器人小程序 238 12.1.2 为什么要构建机器人小程序 239 12.1.3 怎样构建 239 12.2 创建文本处理工具程序库 239 12.2.1 构建WordPlay程序库 240 12.2.2 测试该程序库 245 12.2.3 WordPlay程序库的源代码 247 12.3 构建机器人小程序的核心功能 249 12.3.1 程序的生命周期和组成部分 250 12.3.2 机器人小程序的数据 250 12.3.3 构建Bot类和数据载入器 254 12.3.4 response_to方法 255 12.3.5 试用机器人小程序 259 12.4 机器人小程序主要代码清单 262 12.4.1 bot.rb文件 263 12.4.2 basic_client.rb文件 265 12.5 扩展机器人小程序的功能 266 12.5.1 用文本文件作为会话来源 266 12.5.2 把机器人小程序连接到万维网 266 12.5.3 机器人小程序之间的会话 269 12.6 小结 270 第三篇 Ruby在线 第13章 Ruby on Rails: Ruby的杀手级 应用 271 13.1 第一步 271 13.1.1 Rails是什么,为什么要用它 271 13.1.2 安装Rails 272 13.1.3 数据库方面的考虑 273 13.2 构建Rails简单应用 273 13.2.1 创建Rails空白应用 273 13.2.2 数据库初始化 277 13.2.3 创建模型和迁移文件 279 13.2.4 搭建脚手架 282 13.2.5 控制器与视图 285 13.2.6 路由 292 13.2.7 模型间关系 293 13.2.8 会话与过滤器 295 13.3 其他功能特性 296 13.3.1 界面布局 296 13.3.2 测试 298 13.3.3 插件 299 13.4 参考资料与演示应用 300 13.4.1 参考站点和教程 300 13.4.2 Rails示例应用 300 13.5 小结 301 第14章 Ruby与因特网 302 14.1 HTTP与万维网 302 14.1.1 下载网页 302 14.1.2 生成网页和HTML 309 14.1.3 解析网页内容 313 14.2 电子邮件 317 14.2.1 用POP3协议接收邮件 317 14.2.2 用SMTP协议发送邮件 319 14.2.3 用ActionMailer发送邮件 320 14.3 用FTP协议传输文件 321 14.3.1 FTP连接与基本操作 321 14.3.2 下载文件 323 14.3.3 上传文件 324 14.4 小结 325 第15章 网络连接、套接字与后台进程 326 15.1 网络连接的概念 326 15.1.1 TCP和UDP协议 326 15.1.2 IP地址和DNS 327 15.2 网络操作基础 327 15.2.1 检查机器和服务是否可用 327 15.2.2 进行DNS查询 328 15.2.3 直接连接到TCP服务器 330 15.3 服务器和客户端 332 15.3.1 UDP客户端和服务器 332 15.3.2 构建简单的TCP服务器 333 15.3.3 多客户端TCP服务器 335 15.3.4 GServer程序库 336 15.3.5 基于GServer的聊天服务器 339 15.3.6 Web/HTTP服务器 341 15.3.7 后台进程 341 15.4 小结 343 第16章 有用的Ruby程序库和gem包 344 16.1 abbrev程序库 344 16.1.1 安装 344 16.1.2 示例 344 16.1.3 更多信息 345 16.2 base64程序库 345 16.2.1 安装 346 16.2.2 示例 346 16.2.3 更多信息 347 16.3 BlueCloth程序库 348 16.3.1 安装 348 16.3.2 示例 348 16.3.3 更多信息 349 16.4 cgi程序库 349 16.4.1 安装 350 16.4.2 示例 350 16.4.3 更多信息 353 16.5 chronic程序库 354 16.5.1 安装 354 16.5.2 示例 354 16.5.3 更多信息 355 16.6 Digest程序库 355 16.6.1 安装 355 16.6.2 示例 356 16.6.3 更多信息 357 16.7 English程序库 357 16.7.1 安装 357 16.7.2 示例 358 16.7.3 更多信息 359 16.8 ERB程序库 359 16.8.1 安装 359 16.8.2 示例 359 16.8.3 更多信息 361 16.9 FasterCSV程序库 361 16.9.1 安装 361 16.9.2 示例 362 16.9.3 更多信息 365 16.10 iconv程序库 366 16.10.1 安装 366 16.10.2 示例 366 16.10.3 更多信息 367 16.11 logger程序库 367 16.11.1 安装 367 16.11.2 示例 367 16.11.3 更多信息 369 16.12 pp程序库 369 16.12.1 安装 369 16.12.2 示例 369 16.12.3 更多信息 370 16.13 RedCloth程序库 371 16.13.1 安装 371 16.13.2 示例 371 16.13.3 更多信息 372 16.14 StringScanner程序库 372 16.14.1 安装 372 16.14.2 示例 373 16.14.3 更多信息 375 16.15 tempfile程序库 375 16.15.1 安装 375 16.15.2 示例 375 16.15.3 更多信息 377 16.16 uri程序库 377 16.16.1 安装 377 16.16.2 示例 377 16.16.3 更多信息 380 16.17 zlib程序库 380 16.17.1 安装 380 16.17.2 示例 380 16.17.3 更多信息 381 附录 附录A Ruby入门与回顾(开发人员专用版) 附录B Ruby参考速查 附录C 有用的资源 · · · · · · () |
很接中国地气
可谓字字珠玑
细腻厚实
可谓字字珠玑