《Ruby基礎教程(第4版)》是2017年5月人民郵電出版社出版的圖書,作者是[日]高橋征義、後藤裕藏。
基本介紹
- 書名:Ruby基礎教程(第4版)
- 作者:[日]高橋征義、後藤裕藏
- ISBN:9787115366467
- 頁數:334頁
- 定價:79元
- 出版社:人民郵電出版社
- 出版時間:2017年5月
- 裝幀:平裝
- 開本:16開
內容簡介,圖書目錄,
內容簡介
《圖靈程式設計叢書:Ruby基礎教程(第4版)》為日本公認的Ruby入門教程。松本行弘親自審校並作序推薦。《圖靈程式設計叢書:Ruby基礎教程(第4版)》支持Ruby2.0,也附帶講解了可運行於1.9版本的代碼,事無巨細且通俗易懂地講解了編寫程式時所需要的變數、常量、方法、類、流程控制等的語法,以及主要類的使用方法和簡單的套用,讓沒有編程經驗的讀者也能輕鬆掌握Ruby,找到屬於自己的快樂編程方式,做到融會貫通並靈活運用到實際工作中。
本書適合Ruby初學者學習參考,有一定Ruby編程基礎的讀者若想再回顧一下Ruby的各知識點,本書也能提供不少幫助。
圖書目錄
第 1部分 Ruby初體驗
第 1章 Ruby初探 2
1.1 Ruby的運行方法 3
1.1.1 ruby命令的執行方法 3
1.1.2 irb命令的執行方法 4
1.2 程式解說 5
1.2.1 對象 5
1.2.2 方法 5
1.3 字元串 6
1.3.1 換行符與\ 6
1.3.2 ' '與"" "" 7
1.4 方法的調用 7
1.5 puts方法 8
1.6 p方法 8
1.7 中文的輸出 9
1.8 數值表示與計算 11
1.8.1 數值 11
1.8.2 四則運算 11
1.8.3 數學相關的函式 12
1.9 變數 13
print方法和變數 14
1.10 注釋 14
1.11 控制語句 15
print方法和變數 16
1.12 條件判斷:if~then~end 16
1.13 循環 18
1.13.1 while語句 18
1.13.2 times方法 18
第 2章 便利的對象 19
2.1 數組 20
2.1.1 數組的創建 20
2.1.2 數組對象 20
2.1.3 從數組中抽取對象 20
2.1.4 將對象保存到數組中 21
2.1.5 數組的元素 22
2.1.6 數組的大小 22
2.1.7 數組的循環 23
2.2 散列 24
2.2.1 什麼是符號 24
2.2.2 散列的創建 25
2.2.3 散列的使用 25
2.2.4 散列的循環 25
2.3 正則表達式 26
模式與匹配 26
第3章 創建命令 29
3.1 命令行的輸入數據 29
3.2 檔案的讀取 30
3.2.1 從檔案中讀取內容並輸出 31
3.2.2 從檔案中逐行讀取內容並輸出 32
3.2.3 從檔案中讀取指定模式的內容並輸出 33
3.3 方法的定義 34
3.4 其他檔案的引用 34
第 2部分 Ruby的基礎
第4章 對象、變數和常量 38
4.1 對象 38
4.2 類 39
4.3 變數 39
局部變數與全局變數 40
4.4 常量 42
4.5 保留字 42
4.6 多重賦值 43
4.6.1 合併執行多個賦值操作 43
4.6.2 置換變數的值 43
4.6.3 獲取數組的元素 44
4.6.4 獲取嵌套數組的元素 44
第5章 條件判斷 46
5.1 什麼是條件判斷 46
5.2 Ruby中的條件 47
條件與真假值 47
5.3 邏輯運算符 48
5.4 if語句 49
5.5 unless語句 50
5.6 case語句 51
5.7 if修飾符與unless修飾符 54
5.8 總結 54
第6章 循環 57
6.1 循環的基礎 57
6.2 循環時的注意事項 58
6.3 實現循環的方法 58
6.4 times方法 58
6.5 for語句 60
6.6 普通的for語句 62
6.7 while語句 62
6.8 until語句 64
6.9 each方法 65
6.10 loop方法 66
6.11 循環控制 66
6.11.1 break 68
6.11.2 next 69
6.11.3 redo 70
6.12 總結 71
第7章 方法 73
7.1 方法的調用 73
7.1.1 簡單的方法調用 73
7.1.2 帶塊的方法調用 74
7.1.3 運算符形式的方法調用 74
7.2 方法的分類 75
7.2.1 實例方法 75
7.2.2 類方法 76
7.2.3 函式式方法 76
7.3 方法的定義 77
7.3.1 方法的返回值 78
7.3.2 定義帶塊的方法 79
7.3.3 參數個數不確定的方法 80
7.3.4 關鍵字參數 81
7.3.5 關於方法調用的一些補充 82
第8章 類和模組 87
8.1 類是什麼 87
8.1.1 類和實例 87
8.1.2 繼承 89
8.2 類的創建 90
8.2.1 class關鍵字 91
8.2.2 initialize方法 91
8.2.3 實例變數與實例方法 92
8.2.4 存取器 93
8.2.5 特殊變數self 94
8.2.6 類方法 95
8.2.7 常量 96
8.2.8 類變數 96
8.2.9 限制方法的調用 97
8.3 擴展類 99
8.3.1 在原有類的基礎上添加方法 99
8.3.2 繼承 99
8.4 alias與undef 101
8.4.1 alias 101
8.4.2 undef 102
8.5 模組是什麼 103
8.6 模組的使用方法 103
8.6.1 提供命名空間 103
8.6.2 利用Mix-in擴展功能 104
8.7 創建模組 104
8.7.1 常量 105
8.7.2 方法的定義 105
8.8 Mix-in 106
8.8.1 查找方法的規則 107
8.8.2 extend方法 109
8.8.3 類與Mix-in 110
8.9 面向對象程式設計 111
8.9.1 對象是什麼 111
8.9.2 面向對象的特徵 112
8.9.3 鴨子類型 113
8.9.4 面向對象的例子 114
第9章 運算符 117
9.1 賦值運算符 117
9.2 邏輯運算符的套用 118
9.3 條件運算符 120
9.4 範圍運算符 120
9.5 運算符的優先權 121
9.6 定義運算符 122
9.6.1 二元運算符 122
9.6.2 一元運算符 124
9.6.3 下標方法 125
第 10章 錯誤處理與異常 126
10.1 關於錯誤處理 126
10.2 異常處理 127
10.3 異常處理的寫法 128
10.4 後處理 131
10.5 重試 131
10.6 rescue修飾符 132
10.7 異常處理語法的補充 132
10.8 指定需要捕捉的異常 133
10.9 異常類 134
10.10 主動拋出異常 135
第 11章 塊 136
11.1 塊是什麼 136
11.2 塊的使用方法 137
11.2.1 循環 137
11.2.2 隱藏常規處理 138
11.2.3 替換部分算法 139
11.3 定義帶塊的方法 142
11.3.1 執行塊 142
11.3.2 傳遞塊參數,獲取塊的值 142
11.3.3 控制塊的執行 144
11.3.4 將塊封裝為對象 145
11.4 局部變數與塊變數 147
第3部分 Ruby的類
第 12章 數值類 150
12.1 數值類的構成 150
12.2 數值的字面量 152
12.3 算數運算 153
除法 153
12.4 Math模組 155
12.5 數值類型轉換 156
12.6 位運算 157
12.7 隨機數 159
12.8 計數 160
12.9 近似值誤差 161
第 13章 數組類 164
13.1 複習數組 165
13.2 數組的創建方法 165
13.2.1 使用Array.new 165
13.2.2 使用%w與%i 166
13.2.3 使用to_a方法 166
13.2.4 使用字元串的split方法 166
13.3 索引的使用方法 167
13.3.1 獲取元素 167
13.3.2 元素賦值 169
13.3.3 插入元素 170
13.3.4 通過多個索引創建數組 171
13.4 作為集合的數組 171
“|”與“+”的不同點 173
13.5 作為列的數組 173
13.6 主要的數組方法 175
13.6.1 為數組添加元素 175
13.6.2 從數組中刪除元素 177
13.6.3 替換數組元素 179
13.7 數組與疊代器 180
13.8 處理數組中的元素 181
13.8.1 使用循環與索引 181
13.8.2 使用each方法逐個獲取元素 181
13.8.3 使用具有破壞性的方法實現循環 182
13.8.4 使用其他疊代器 182
13.8.5 創建專用的疊代器 182
13.9 數組的元素 183
13.9.1 使用簡單的矩陣 183
13.9.2 初始化時的注意事項 183
13.10 同時訪問多個數組 185
第 14章 字元串類 188
14.1 字元串的創建 189
14.1.1 使用%Q與%q 190
14.1.2 使用Here Document 190
14.1.3 使用sprintf方法 191
14.1.4 使用`` 191
14.2 獲取字元串的長度 193
14.3 字元串的索引 194
14.4 字元串的連線 194
14.5 字元串的比較 195
字元串的大小比較 196
14.6 字元串的分割 198
14.7 換行符的使用方法 198
14.8 字元串的檢索與置換 199
14.8.1 字元串的檢索 199
14.8.2 字元串的置換 200
14.9 字元串與數組的共同方法 200
14.9.1 與索引操作相關的方法 200
14.9.2 返回Enumerator對象的方法 201
14.9.3 與連線、反轉(reverse)相關的方法 202
14.10 其他方法 203
14.11 日語字元編碼的轉換 204
14.11.1 encode方法 204
14.11.2 nkf庫 204
第 15章 散列類 208
15.1 複習散列 208
15.2 散列的創建 209
15.2.1 使用{} 209
15.2.2 使用Hash.new 209
15.3 值的獲取與設定 210
15.3.1 一次性獲取所有的鍵、值 211
15.3.2 散列的默認值 211
15.4 查看指定對象是否為散列的鍵或值 212
15.5 查看散列的大小 213
15.6 刪除鍵值 213
15.7 初始化散列 214
處理有兩個鍵的散列 215
15.8 套用示例:計算單詞數量 216
第 16章 正則表達式類 219
16.1 關於正則表達式 219
16.1.1 正則表達式的寫法與用法 219
16.1.2 正則表達式對象的創建方法 220
16.2 正則表達式的模式與匹配 220
16.2.1 匹配普通字元 221
16.2.2 匹配行首與行尾 221
16.2.3 指定匹配字元的範圍 222
16.2.4 匹配任意字元 224
16.2.5 使用反斜槓的模式 225
16.2.6 重複 226
16.2.7 最短匹配 228
16.2.8 ()與重複 229
16.2.9 選擇 229
16.3 使用quote方法的正則表達式 229
16.4 正則表達式的選項 230
16.5 捕獲 231
16.6 使用正則表達式的方法 232
16.6.1 sub方法與gsub方法 232
16.6.2 scan方法 233
16.7 正則表達式的例子 234
第 17章 IO類 237
17.1 輸入/輸出的種類 237
17.1.1 標準輸入/輸出 237
17.1.2 檔案輸入/輸出 239
17.2 基本的輸入/輸出操作 240
17.2.1 輸入操作 240
17.2.2 輸出操作 243
17.3 檔案指針 244
17.4 二進制模式與文本模式 245
17.5 緩衝 246
17.6 與命令進行互動 248
17.7 open-uri庫 249
17.8 stringio庫 250
第 18章 File類與Dir類 252
18.1 File類 252
18.1.1 變更檔案名稱 253
18.1.2 複製檔案 253
18.1.3 刪除檔案 254
18.2 的操作 254
18.2.1 內容的讀取 255
18.2.2 的創建與刪除 258
18.3 檔案與的屬性 259
FileTest模組 261
18.4 檔案名稱的操作 262
18.5 與操作檔案相關的庫 263
18.5.1 find庫 263
18.5.2 tempfile庫 264
18.5.3 fileutils庫 265
第 19章 Encoding類 268
19.1 Ruby的編碼與字元串 268
19.2 腳本編碼與魔法注釋 269
19.3 Encoding類 270
Encoding類的方法 271
19.4 正則表達式與編碼 274
19.5 IO類與編碼 274
19.5.1 外部編碼與內部編碼 274
19.5.2 編碼的設定 275
19.5.3 編碼的作用 276
第 20章 Time類與Date類 280
20.1 Time類與Date類 280
20.2 時間的獲取 281
20.3 時間的計算 282
20.4 時間的格式 282
20.5 本地時間 284
20.6 從字元串中獲取時間 284
20.7 日期的獲取 285
20.8 日期的運算 286
20.9 日期的格式 286
20.10 從字元串中獲取日期 287
第 21章 Proc類 288
21.1 Proc類是什麼 288
21.1.1 lambda 289
21.1.2 通過Proc參數接收塊 291
21.1.3 to_proc方法 292
21.2 Proc的特徵 292
21.3 Proc類的實例方法 293
第4部分 動手製作工具
第 22章 文本處理 298
22.1 準備文本 298
22.1.1 下載檔案 298
22.1.2 獲取正文 299
22.1.3 刪除標籤 300
22.2 擴展simple_grep.rb:顯示次數 302
計算匹配行 302
22.3 擴展simple_grep.rb:顯示匹配的部分 304
22.3.1 突出匹配到的位置 304
22.3.2 顯示前後各10個字元 305
22.3.3 讓前後的字元數可變更 306
第 23章 檢索郵政編碼 308
23.1 獲取郵政編碼 308
23.2 檢索郵政編碼 309
23.3 sqlite3庫 309
23.4 插入數據 311
23.5 檢索數據 313
23.6 總結 314
附錄
附錄A Ruby運行環境的構建 316
A.1 Ruby的安裝 316
A.2 在Windows下安裝 316
A.2.1 開始安裝 317
A.2.2 同意軟體使用許可協定 317
A.2.3 確認安裝路徑以及選項 317
A.2.4 安裝進度 318
A.2.5 安裝完成 318
A.2.6 啟動控制台 319
A.3 在Mac OS X下安裝 320
通過MacPorts安裝 321
A.4 在Unix下安裝 322
A.4.1 從原始碼編譯 322
A.4.2 使用二進制軟體包 323
A.4.3 使用Ruby軟體包管理工具 323
A.5 編輯器與IDE 323
沒有好用的編輯器就不能編寫Ruby程式嗎 324
附錄B Ruby參考集 325
B.1 RubyGems 325
gem命令 325
B.2 Ruby參考手冊 327
B.2.1 Web上的資源 327
B.2.2 ri命令 328
B.2.3 閱讀參考手冊的技巧 328
B.3 命令行選項 329
B.4 預定義變數、常量 330
B.4.1 預定義變數 330
B.4.2 預定義常量 331
B.4.3 偽變數 332
B.4.4 環境變數 332
B.5 錯誤信息 332
B.5.1 syntax error 333
B.5.2 NameError/NoMethodError 333
B.5.3 ArgumentError 333
B.5.4 TypeError 334
B.5.5 LoadError 334
B.5.6 [BUG] 334
後記 335