Perl語言編程思想

Perl語言編程思想

《Perl語言編程思想》是一本2019年出版的圖書,由中國電力出版社出版

基本介紹

  • 中文名:Perl語言編程思想
  • 作者:[美]勞倫特?羅森菲爾德(Laurent Rosenfeld),[美]艾倫?唐尼(Allen Downey)
  • 出版時間:2019年9月
  • 出版社:中國電力出版社
  • ISBN:9787519833374
  • 開本:16 開
  • 裝幀:平裝-膠訂
內容簡介,圖書目錄,

內容簡介

本書分為兩部分,*部分從每個程式設計師需要了解的基本概念展開,第二部分重點介紹不同的編程範例和一些更高級的編程技術。本書大概是兩個學期的課程,是高等院校計算機科學初學者的完美教學參考書。·學習基本概念,包括變數、表達式、語句、函式、條件、遞歸和循環。·了解常用的基本數據結構和*有用的算法。·深入研究面向對象的編程,並學習如何構建自己的類型和方法來擴展語言。·使用語法和正則表達式分析文本內容。·探索函式式編程如何幫助你使代碼更簡單、更具表現力。

圖書目錄

前言 1
第I部分 基礎篇
第1章 編程之道 11
什麼是程式? 11
運行Perl 6 13
個程式 14
算術操作符 15
值和類型16
形式語言和自然語言 18
調試 20
辭彙表 21
練習 23
第2章 變數、表達式和語句 25
賦值語句25
變數名 27
表達式和語句 29
腳本模式31
單行模式33
運算次序33
字元串操作 34
注釋 35
調試 36
辭彙表 37
練習 39
第3章 函式 41
函式調用41
函式和方法 44
數學函式45
組織代碼46
添加新函式(又名子程式) 47
定義和使用 50
計算流程50
形式參數和實際參數 51
變數和參數是局部的 52
堆疊圖 53
有成效的函式和空函式 54
函式簽名56
可變和不可變參數 58
作為頭等公民的函式和子程式 59
為什麼引入函式和子程式? 61
調試 62
辭彙表 63
練習 65
第4章 循環、條件和遞歸 68
整除和取模 68
布爾表達式 69
邏輯運算符 71
條件化執行 73
否則執行分支 74
連結條件75
嵌套條件76
if 條件作語句為修飾符 77
unless條件語句77
for循環 78
遞歸 80
遞歸子例程的堆疊關係圖 82
無限遞歸83
鍵盤輸入83
程式參數和MAIN子程式 84
調試 85
辭彙表 86
練習 88
第5章 有成效的子程式 91
返回值 91
漸進開發93
組織代碼96
布爾函式97
一個完整的程式語言 98
深入遞歸99
靠信心的飛躍 102
再舉一個例子 102
檢查類型103
multi子程式 105
調試 106
辭彙表 108
練習 108
第6章 疊代 111
賦值與等值 111
重新賦值112
更新變數112
while語句 113
局部變數和變數作用域 115
控制流語句(last、next等) 118
平方根 120
算法 123
調試 123
辭彙表 124
練習 125
第7章 字元串 127
字元串是一個序列 127
常用字元串操作符 128
字元串長度 128
字元串中查找子字元串 129
從字元串中提取子字元串 130
其他幾個有用的字元串函式或方法 131
使用while或for循環遍歷字元串 133
循環和計數 135
正則表達式(正則) 136
使用正則表達式 137
創建正則表達式模式 139
字面匹配 139
通配符和字元類 140
量詞 141
錨點和斷言 142
分支條件 144
分組和捕獲 145
副詞(又叫修飾符)146
正則表達式練習 147
整合在一起 148
提取日期 148
提取 IP 地址 150
替換 151
subst方法 151
s/search/rece/結構 152
使用捕獲 153
副詞(修飾符) 153
調試 153
辭彙表 156
練習 157
第8章 案例研究:文字遊戲 161
讀取檔案和寫入檔案 161
讀取單詞列表 163
練習 164
查找 166
超過20個字元的單詞(解決方案) 166
不含“e”的單詞(解決方案) 167
避免其他字母(解決方案) 168
只使用部分字母(解決方案) 169
使用列表的所有字母(解決方案) 170
字母順序(解決方案) 170
歸約到先前解決的問題的另一個例子 172
調試 172
辭彙表 173
練習 173
第9章 數組和列表 176
列表和數組都是序列 176
數組是可變的 179
向數組中添加或移除某項 181
堆疊和佇列 183
修改數組的其他方法 184
遍歷列表186
新的循環構造 188
Map、Filter和Reduce 190
將列表歸約為值 190
歸約元操作符 191
將列表映射到另一個列表 192
篩選列表元素 194
高階函式與函式式編程 195
固定大小的數組、固定類型的數組和固定形狀的數組 196
多維數組197
排序數組或列表 198
更高級的排序技術 199
調試 203
辭彙表 204
練習 205
第10章 哈希 209
哈希是映射 209
哈希的常見操作 212
哈希作為集合的計數器 214
循環和哈希 215
反向查找216
存在與否的測試 217
哈希鍵是的 219
哈希和數組 220
備忘錄 223
哈希作為調度表 225
全局變數226
調試 227
辭彙表 228
練習 229
第11章 案例分析:數據結構選擇 232
三元條件運算元 232
“Switch”語句given when 233
子程式命名參數和可選參數 235
命名參數 235
可選參數 236
詞頻分析237
隨機數 238
用詞的頻率 240
可選參數243
哈希減法244
構造新運算符 245
set、bag和mix 246
隨機詞 248
馬爾可夫分析 250
數據結構253
構建自己的數據結構 254
鍊表 255
樹 256
二叉堆 257
調試 260
辭彙表 262
練習:哈夫曼編碼 262
變長代碼 263
頻率表 264
建立哈夫曼代碼 264
第II部分 高級篇
第12章 類和對象 271
對象、方法和面向對象的編程 272
程式設計師定義的類型 273
屬性 275
創建方法277
矩形和對象內嵌 280
實例作為返回值 282
繼承 283
像素類 283
MovablePoint類 285
多重繼承:有意思,但明智嗎? 287
角色和構成 288
類和角色:示例 289
角色組合和代碼重用291
角色、類、對象和類型 292
方法委派293
多態性 294
封裝 296
私有方法 297
使用私有屬性構造對象 298
接口和實現 300
面向對象編程:一個故事 301
牧羊人的寓言 301
寓意 302
多態性 303
調試 303
Perl 6 調試器 304
得到一些幫助 304
逐句運行代碼 305
在正確的地方停用斷點 305
通過跟蹤點來記錄變數信息 306
跟蹤正則匹配過程 306
辭彙表 307
第13章 正則和語法 310
簡要回顧310
聲明式編程 312
捕獲 312
命名規則(子規則) 314
自定義語法 317
語法繼承319
操作對象320
用於分析JSON的語法 322
JSON格式 322
我們的JSON示例 323
逐步編寫JSON語法 323
JSON 語法 326
添加操作 327
繼承和可變文法 330
調試 330
辭彙表 333
練習:數學計算器的語法 334
第14章 函式式編程 335
高階函式335
重新審視:函式作為頭等對象 335
匿名子程式和Lambda表達式 337
閉包 339
列表處理和管道編程 341
Feed和反向Feed運算符 342
歸約元操作符 343
Hyper操作符 343
交叉運算符X和拉鏈運算符Z 344
列表運算符:小結 345
創建新操作符 346
創建自己的類Map函式 350
自定義版本的map、grep和類似函式 350
我們自己的sort函式 351
疊代器版本的map 353
疊代器版本的grep 354
Gather和Take機制 357
惰性列表和序列運算符 359
序列運算符 360
無限列表 361
使用顯式生成器 361
柯里化和無窮操作符 364
創建柯里子程式 364
用assuming方法對現有子程式進行柯里化 365
使用函式編程風格 367
合併排序算法 368
合併排序的非函式化實現 368
合併排序的函式式實現 370
調試 371
辭彙表 376
練習:快速排序 377
第15章 後的一些建議 379
讓它清晰,保持簡單 379
必要的和禁忌的 380
使用成語383
接下來是什麼? 386
附錄A 本書練習的答案 389

相關詞條

熱門詞條

聯絡我們