前言
第1章 字符串
1. 1 根據部分構建字符串
1. 2 將變量代八字符串
1. 3 將變量代入現(xiàn)有的字符串
1. 4 按字或字符逆轉字符串
1. 5 表示不可打印字符
1. 6 字符與值的相互轉換
1. 7 字符串與符號之間的相互轉換
1. 8 每次處理字符串中的一個字符
1. 9 每次處理字符串中的一個字
1. 10 修改字符串的大小寫
1. 11 管理空白
1. 12 測試對象是否類似于字符串
1. 13 獲得想要的字符串部分
1. 14 處理國際編碼
1. 15 帶自動換行的文本
1. 16 生成字符串的后繼
1. 17 使用正則表達式匹配字符串
1. 18 一遍替換多種模式
1. 19 驗證電子郵箱地址
1. 20 使用貝葉斯分析器對文本進行分類
第2章 數(shù)字
2. 1 由字符串分析數(shù)字
2. 2 浮點數(shù)的比較
2. 3 表示數(shù)字至任意精度
2. 4 有理數(shù)的表示
2. 5 隨機數(shù)的生成
2. 6 數(shù)字基之間的轉換
2. 7 獲取對數(shù)
2. 8 確定平均數(shù). 中值和模
2. 9 度數(shù)與弧度之間的轉換
2. 10 矩陣乘法
2. 11 求解線性方程組
2. 12 復數(shù)的使用
2. 13 模擬Fixnum的子類
2. 14 使用羅馬數(shù)字進行數(shù)學運算
2. 15 生成數(shù)字序列
2. 16 生成素數(shù)
2. 17 檢查信用卡校驗和
第3章 日期與時間
3. 1 查找當前日期
3. 2 精確或模糊地分析日期
3. 3 打印日期
3. 4 日期上的迭代
3. 5 計算日期
3. 6 從任意日期開始計算天數(shù)
3. 7 時區(qū)轉換
3. 8 檢查夏令時是否起效
3. 9 Time與DateTime對象之間的轉換
3. 10 查找周日期
3. 11 處理商用日期
3. 12 周期性運行代碼塊
3. 13 等待固定長度的時間
3. 14 為長期運行的操作添加超時
第4章 數(shù)組
4. 1 在數(shù)組上迭代
4. 2 不使用臨時變量重排值
4. 3 去除數(shù)組中的重復元素
4. 4 逆轉數(shù)組
4. 5 數(shù)組排序
4. 6 排序字符串時忽略大小寫
4. 7 確保已排序數(shù)組保持有序
4. 8 數(shù)組項求和
4. 9 按出現(xiàn)率排序數(shù)組
4. 10 打亂數(shù)組
4. 11 獲取數(shù)組的N個最小項
4. 12 使用Injection構建散列
4. 13 提取部分數(shù)組
4. 14 在數(shù)組上處理集合運算
4. 15 集合劃分或分類
第5章 散列
5. 1 使用符號作為散列鍵
5. 2 創(chuàng)建帶默認值的散列
5. 3 向散列添加元素
5. 4 從散列中去除元素
5. 5 使用數(shù)組或其他可修改對象作為散列鍵
5. 6 為相同散列鍵保持重復值
5. 7 在散列上迭代
5. 8 按插入順序在散列上迭代
5. 9 散列打印
5. 10 反轉散列
5. 11 隨機選擇加權列表
5. 12 構建柱狀圖
5. 13 重新映射散列的鍵與值
5. 14 提取部分散列
5. 15 使用正則表達式搜索散列
第6章 文件與目錄
6. 1 檢查文件是否存在
6. 2 檢查對文件的訪問
6. 3 更改文件權限
6. 4 查看上次使用文件的時間
6. 5 目錄清單
6. 6 讀取文件內容
6. 7 寫文件
6. 8 寫臨時文件
6. 9 從文件中挑選隨機行
6. 10 比較兩個文件
6. 11 在“只讀一次”輸入流上執(zhí)行隨機訪問
6. 12 遍歷目錄樹
6. 13 文件加鎖
6. 14 備份至帶版本號的文件名
6. 15 偽裝字符串為文件
6. 16 重定向標準輸出或輸出
6. 17 處理二進制文件
6. 18 刪除文件
6. 19 截短文件
6. 20 查找所需文件
6. 21 查找并修改當前工作目錄
第7章 代碼塊與迭代
7. 1 代碼塊的創(chuàng)建與調用
7. 2 編寫接收代碼塊的方法
7. 3 將代碼塊參數(shù)與變量綁定
7. 4 作為閉包的代碼塊:在代碼塊內使用外部變量
7. 5 在數(shù)據結構上編寫迭代器
7. 6 更改對象的迭代方式
7. 7 編寫分類或收集的代碼塊方法
7. 8 停止迭代
7. 9 并行地在多個迭代變量上循環(huán)
7. 10 隱藏塊方法中的設置與清除
7. 11 使用回調的松耦合系統(tǒng)
第8章 對象與類
8. 1 管理實例數(shù)據
8. 2 管理類數(shù)據
8. 3 檢查類或模塊的成員
8. 4 編寫一個繼承類
8. 5 方法重載
8. 6 驗證并修改屬性值
8. 7 定義虛屬性
8. 8 授權對另一對象的方法調用
8. 9 對象到不同類型的轉換與強制轉換
8. 10 從任意對象獲取人類可讀的打印輸出
8. 11 接收或傳遞參數(shù)的變量數(shù)目
8. 12 模擬關鍵宇參數(shù)
8. 13 調用超類的方法
8. 14 創(chuàng)建抽象方法
8. 15 凍結對象以防修改
8. 16 生成對象的副本
8. 17 聲明常量
8. 18 實現(xiàn)類方法和singleton方法
8. 19 通過私有化方法控制訪問
第9章 模塊與命名空間
9. 1 使用混入模擬多重繼承
9. 2 使用模塊擴展特定對象
9. 3 混用類方法
9. 4 實現(xiàn)Enumerable:編寫一個方法,146獲得22種免費方法
9. 5 使用命名空間避免名字沖突
9. 6 按需自動加載庫
9. 7 包括命名空間
9. 8 初始化模塊定義的實例變量
9. 9 自動初始化混合插入的模塊
第10章 反射與元編程
10. 1 查找對象的類和超類
10. 2 列出對象的方法
10. 3 列出對象獨有的方法
10. 4 獲得方法的引用
10. 5 修正別人類中的錯誤
10. 6 偵聽類的變化
10. 7 檢查對象是否具有必需的屬性
10. 8 響應對未定義方法的調用
10. 9 自動初始化實例變量
10. 10 使用元編程避免刻板代碼
10. 11 帶字符串計算的元編程
10. 12 計算早先上下文中的代碼
10. 13 取消定義方法
10. 14 為方法起別名
10. 15 面向方面的編程
10. 16 強制實施軟件契約
第11章 XML和HTML
11. 1 檢查XML的良構性
11. 2 從文檔的樹結構中提取數(shù)據
11. 3 解析文檔時提取數(shù)據
11. 4 使用XPath導航文檔
11. 5 解析不合法標記
11. 6 將一個XML文檔轉換為一個散列
11. 7 驗證XML文檔
11. 8 取代XML實體
11. 9 創(chuàng)建并修改XML文檔
11. 10 壓縮XML文檔中的空白
11. 11 猜解文檔的編碼
11. 12 從一種編碼轉換為另一種編碼
11. 13 從HTML文檔中提取所有URL
11. 14 將純文本轉換為HTML
11. 15 將HTML文檔從Web轉換為文本
11. 16 一個簡單的提要聚合器
第12章 圖形與其他文件格式
12. 1 縮略圖形
12. 2 向圖形中添加文本
12. 3 將一個圖形格式轉換為另一種
12. 4 用圖表示數(shù)據
12. 5 使用Sparkline添加圖形化上下文
12. 6 強加密數(shù)據
12. 7 解析逗號分隔的數(shù)據
12. 8 解析非完全逗號分隔的數(shù)據
12. 9 生成并分析Ex el電子數(shù)據表
12. 10 使用Gzip和Tar壓縮并存檔文件
12. 11 讀寫ZIP文件
12. 12 讀寫配置文件
12. 13 生成PDF文件
12. 14 將數(shù)據表示為MIDI音樂
第13章 數(shù)據庫和持久性
13. 1 用YAML串行化數(shù)據
13. 2 用Marshal串行化數(shù)據
13. 3 用Madeleine保持對象
13. 4 用SimpleSearch索引結構化文本
13. 5 用Ferret索引結構化文本
13. 6 使用BerkeleyDB數(shù)據庫
13. 7 在Unix上控制MySQL
13. 8 找到查詢返回的行數(shù)
13. 9 與MySQL數(shù)據庫直接對話
13. 10 和PostgreSQL數(shù)據庫直接對話
13. 11 用ActiveRecord使用對象相關映射
13. 12 使用對象相關映射Og
13. 13 以編程方式構建查詢
13. 14 用ActiveRecord確認數(shù)據
13. 15 阻止SQL注入攻擊
13. 16 在ActiveRecord里使用交易
13. 17 添加掛鉤程序到表事件中
13. 18 用數(shù)據庫Minxin添加標簽
第14章 Internet服務
14. 1 抓取Web頁面的內容
14. 2 發(fā)送HTTPS Web請求
14. 3 自定義HTTP的請求頭文件
14. 4 執(zhí)行DNS查詢
14. 5 發(fā)送郵件
14. 6 用IMAP閱讀郵件
14. 7 用POP3閱讀郵件
14. 8 作為FTP客戶端
14. 9 作為Telnet客戶端
14. 10 作為SSH客戶端
14. 11 復制文件到其他機器
14. 12 作為BitTorrent客戶端
14. 13 ping機器
14. 14 編寫Internet服務器
14. 15 分析URL
14. 16 編寫CGI腳本
14. 17 設置cookie和其他HTTP響應頭文件
14. 18 用CGI處理文件上傳
14. 19 用WEBrick運行servlet
14. 20 真實世界的HTTP客戶端
第15章 Web開發(fā):Ruby on Rails
15. 1 編寫簡單的Rails應用程序顯示系統(tǒng)狀態(tài)
15. 2 從控制器傳遞數(shù)據到視圖
15. 3 創(chuàng)建頁眉和頁腳的布局
15. 4 重新定位不同的位置
15. 5 用render顯示模板
15. 6 集成數(shù)據庫到Rails應用程序中
15. 7 理解復數(shù)規(guī)則
15. 8 創(chuàng)建登錄系統(tǒng)
15. 9 保存散列化的用戶密碼到數(shù)據庫中
15. 10 轉義顯示用的HTML和JavaScript
15. 11 設置并找回會話信息
15. 12 設置并找回Cookie
15. 13 提取代碼到輔助函數(shù)中
15. 14 重構視圖為視圖的部分片斷
15. 15 用script. aculo. us添加DHTML效果
15. 16 生成操作模型對象的表格
15. 17 創(chuàng)建AJax表格
15. 18 在Web站點上發(fā)布Web服務
15. 19 用Rails發(fā)送郵件
15. 20 自動發(fā)送錯誤信息到郵箱
15. 21 文檔化Web站點
15. 22 Web站點的單元測試
15. 23 在Web應用程序中使用斷點
第16章 Web服務及分布式編程
16. 1 搜索Amazon上的書
16. 2 找到Flickr上的照片
16. 3 編寫XML-RPC客戶端
16. 4 編寫SOAP客戶端
16. 5 編寫SOAP服務器
16. 6 用Google的SOAP服務搜索Web
16. 7 使用WSDL文件更簡單地構建SOAP調用
16. 8 用信用卡支付
16. 9 通過UPS或FedEx找到裝運包的費用
16. 10 在任意數(shù)目的計算機間共享散列
16. 11 實現(xiàn)分布式查詢
16. 12 創(chuàng)建共享的“白板”
16. 13 通過訪問控制列表保障DRb服務的安全
16. 14 通過Rinda自動發(fā)現(xiàn)DRb服務
16. 15 代理無法分布的對象
16. 16 用MemCached在分布式RAM上保存數(shù)據
16. 17 用MemCached高速緩存重要結果
16. 18 遠程控制的Jukebox
第17章 測試. 調試. 優(yōu)化以及文檔化
17. 1 只在調試模式下運行代碼
17. 2 發(fā)出異常
17. 3 處理異常
17. 4 在異常后重新運行
17. 5 添加日志到應用程序中
17. 6 創(chuàng)建并理解Traceback
17. 7 編寫單元測試
17. 8 運行單元測試
17. 9 測試使用外部資源的代碼
17. 10 使用斷點審查并改變應用程序的狀態(tài)
17. 11 文檔化應用程序
17. 12 記錄應用程序
17. 13 Benchmark競爭性解決方案
17. 14 一次運行多個分析工具
17. 15 誰調用了該方法?調用圖形分析器
第18章 打包和發(fā)布軟件
18. 1 通過查詢gem知識庫尋找?guī)?nbsp;
18. 2 安裝并使用gem
18. 3 要求gem的某個特定版本
18. 4 卸載gem
18. 5 為已安裝的gem讀入文檔
18. 6 打包代碼為gem
18. 7 發(fā)布gem
18. 8 用setup. rb安裝并創(chuàng)建獨立Ruby程序包
第19章 用Rake自動執(zhí)行任務
19. 1 自動運行單元測試
19. 3 清除生成的文件
19. 4 自動構建gem
19. 5 收集代碼的統(tǒng)計信息
19. 6 發(fā)布文檔
19. 7 并行運行多個任務
19. 8 通用的項目Rakefile
第20章 多任務和多線程
20. 1 在Unix上運行守護進程
20. 2 創(chuàng)建Windows服務
20. 3 用線程一次做兩件事情
20. 4 同步訪問一個對象
20. 5 中止線程
20. 6 在很多對象上同時運行代碼塊
20. 7 用線程池限制多線程
20. 8 用popen驅動外部進程
20. 9 通過Unixshell命令抓取輸出和錯誤流
20. 10 控制其他機器上的進程
0. 11 避免死鎖
第21章 用戶界面
21. 1 一次得到輸入中的一行
21. 2 一次得到輸入的一個字符
21. 3 分析命令行參數(shù)
21. 4 測試程序是否交互運行
21. 5 設置和卸載Curses程序
21. 6 清空屏幕
21. 7 決定終端大小
21. 8 改變文本的顏色
21. 9 讀入密碼
21. 10 允許用Readline編輯輸入
21. 11 使得鍵盤指示燈閃爍
21. 12 用Tk創(chuàng)建一個GUI應用程序
21. 13 用wxRuby創(chuàng)建一個GUI應用程序
21. 14 用Ruby/GTK創(chuàng)建一個GUI應用程序
21. 15 用RubyCocoa創(chuàng)建一個Ma OS X應用程序
21. 16 用AppleScript得到用戶輸入
第22章 用其他語言擴展Ruby
22. 1 為Ruby編寫C擴展程序
22. 2 在Ruby中使用C庫
22. 3 通過SWIG調用C庫
22. 4 通過SWIG調用C庫
22. 5 用JRuby使用Java庫
第23章 系統(tǒng)管理
23. 1 腳本化外部程序
23. 2 管理Windows服務
23. 3 作為另一個用戶運行代碼
23. 4 不用cron或at運行周期性任務
23. 5 刪除匹配正則表達式的文件
23. 6 批量重命名文件
23. 7 找到復制的文件
23. 8 自動備份
23. 9 在用戶目錄下規(guī)范化所有權和權限
23. 10 為給定用戶殺死所有進程