作者介紹
技術評審者介紹
作者致謝
引言
第1章 Ruby能為你做什么
1.1 Hello World程序
1.2 Ruby內幕
1.2.1 對象漫談:面向對象理論
1.2.2 對象實戰(zhàn):Ruby的OO觀點
1.2.2 秘傳技巧:讀寫方法省了很多事
1.2.3 塊和yield的奧妙
1.2.4 包羅萬象:關于類型的理性途徑
1.3 管理員專用藥膏
第2章 常規(guī)任務的快速解決方案
2.1 單行代碼示例
2.1.1 用Ruby進行grep匹配搜索
2.1.2 處理注釋
2.1.3 運用行號
2.1.4 與字段打交道
2.1.5 巧妙的記錄處理方法
2.1.6 創(chuàng)建定制的目錄列表
2.1.7 定時監(jiān)控命令執(zhí)行情況
2.2 更大型的單行代碼示例
2.2.1 翻轉日志:定時執(zhí)行的單行代碼
2.2.2 Ruby跳板
2.3 當“寫得快”遇上“跑得快”
第3章 性能問題:實用主義觀點
3.1 腳本可以運行得更快
3.1.1 數(shù)字游戲
3.1.2 腳本 VS 標準二進制程序
3.2 性能分析
3.2.1 UNIX的time命令
3.2.2 Benchmark性能基準庫
3.2.3 Profiler性能優(yōu)化分析庫
3.3 性能優(yōu)化
3.3.1 算法優(yōu)化
3.3.2 語句優(yōu)化
3.3.3 減輕副作用
3.3.3 扔下C炸彈
3.4 撞擊瞬間速度
第4章 元編程的威力
4.1 靈活的方法簽名
4.1.1 默認值
4.1.2 散列表式參數(shù)
4.1.3 對缺失方法的動態(tài)指派
4.2 宏
4.2.1 模塊包含
4.2.2 對象擴展
4.2.3 業(yè)務領域專用語言(DSL)
4.2.4 插件API:用來增加宏的宏
4.3 沉重的元編程
第5章 用聰明的方法生成文件
5.1 安全第一
5.1.1 文件鎖定
5.1.2 安全的文件操作方法
5.2 白紙黑字勝過空口無憑
5.2.1 群策群力:程序驅動式創(chuàng)建文件
5.2.2 電閃雷鳴:模板驅動式創(chuàng)建文件
5.3 當直白文件不再滿足需要
第6章 對象的存儲和檢索
6.1 本地磁盤存儲
6.1.1 檢視時間
6.1.2 匯集思想
6.1.3 YAML不是標記語言
6.1.4 評估其他備選方案的性能指標
6.2 網絡感知存儲
6.2.1 總體設計原則
6.2.2 memcached:天上有朵大散列
6.2.3 數(shù)據庫
6.2.4 用ActiveRecord實現(xiàn)對象—關系映射
6.3 與大家伙打交道
第7章 處理企業(yè)數(shù)據
7.1 解析數(shù)據
7.1.1 離別是如此甜蜜的憂傷:被界定符分隔的數(shù)據值
7.1.2 XML數(shù)據
7.2 網絡服務
7.2.1 輕量級目錄訪問協(xié)議(LDAP)
7.2.2 XML遠程方法調用(RPC)
7.2.3 簡單對象訪問協(xié)議(SOAP)
7.2.4 表示狀態(tài)轉換(REST)
7.3 回歸基礎
第8章 有趣又有收益的聯(lián)網
8.1 基礎網絡I/O操作
8.1.1 給我套接字
8.1.2 套接字錯誤和異常
8.1.3 定時監(jiān)控:有目的的超時
8.1.4 基于套接字的監(jiān)控
8.2 高級網絡服務
8.2.1 協(xié)議的羞恥
8.2.2 構建Web機器人
8.2.3 一起拋出服務器
8.3 監(jiān)視與控制
8.3.1 用SSH獲取命令
8.3.2 網絡數(shù)據包監(jiān)控
8.4 本章結尾
第9章 網絡監(jiān)控
9.1 收集數(shù)據
9.1.1 簡單網絡管理協(xié)議(SNMP)
9.1.2 安全外殼
9.2 分析數(shù)據
9.2.1 匯集數(shù)據
9.2.2 事件解析
9.2.3 事件過濾與賦值
9.2.4 綜合考慮
9.2.5 聚集分析
9.3 展示數(shù)據
9.3.1 圖表
9.3.2 圖
9.4 璀燦耀眼的寶物
第10章 Ruby的擴展:寶石在握
10.1 Gems的管理與使用
10.1.1 安裝RubyGems
10.1.2 gem命令
10.1.3 在代碼中使用Gems
10.1.4 通過gem_server訪問文檔
10.2 創(chuàng)建Gems
10.2.1 Gem到底是什么東西?
10.2.2 收集所需文件
10.2.3 編寫gem規(guī)格說明書
10.2.4 構建Gem
10.2.5 發(fā)布Gem
10.3 滿口寶石
第11章 測試與編寫文檔
11.1 Rake工具
11.1.1 基本任務
11.1.2 文件任務
11.1.3 確保目錄存在
11.1.4 一般化規(guī)則
11.1.5 任務合成
11.1.6 編寫文檔的任務
11.2 測試
11.2.1 Ruby的測試庫
11.2.2 執(zhí)行測試
11.2.3 測試支架
11.2.4 測試包
11.2.5 用Rake做測試
11.3 編寫文檔
11.3.1 自動編寫文檔
11.3.2 基本注釋
11.3.3 頭標記、分隔符和鏈接
11.3.4 列表
11.3.5 處理命令
11.3.6 用Rake生成文檔
11.3 任務完成
第12章 Ruby的未來
12.1 運行環(huán)境
12.1.1 YARV解釋器
12.1.2 JRuby解釋器
12.2 語言方面的變化
12.2.1 數(shù)組和散列表
12.2.2 字符串
12.2.3 I/O操作
12.2.4 塊參數(shù)本地化
12.2.5 數(shù)組拆解
12.2.6 對象打拍子
12.2.7 讀-寫屬性
12.2.8 Enumerable類升級
12.3 新的開始
附錄 Ruby的執(zhí)行方法