注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)倉(cāng)頡語(yǔ)言核心編程:入門、進(jìn)階與實(shí)戰(zhàn)

倉(cāng)頡語(yǔ)言核心編程:入門、進(jìn)階與實(shí)戰(zhàn)

倉(cāng)頡語(yǔ)言核心編程:入門、進(jìn)階與實(shí)戰(zhàn)

定 價(jià):¥109.00

作 者: 徐禮文
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買這本書可以去


ISBN: 9787302625889 出版時(shí)間: 2024-07-01 包裝: 平裝-膠訂
開本: 16開 頁(yè)數(shù): 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書是一本系統(tǒng)闡述倉(cāng)頡程序設(shè)計(jì)語(yǔ)言的技術(shù)書籍,倉(cāng)頡程序設(shè)計(jì)語(yǔ)言是一門由華為公司研發(fā)的國(guó)產(chǎn)計(jì)算機(jī)高級(jí)編程語(yǔ)言。全倉(cāng)頡語(yǔ)言作為新一代的面向應(yīng)用的全場(chǎng)景編程語(yǔ)言,兼具開發(fā)效率和運(yùn)行性能,并且有極強(qiáng)的領(lǐng)域擴(kuò)展能力。倉(cāng)頡語(yǔ)言在設(shè)計(jì)上廣泛吸收和借鑒了現(xiàn)代編程語(yǔ)言特性,是首個(gè)面向全場(chǎng)景應(yīng)用開發(fā)的通用編程語(yǔ)言。本書全面介紹了倉(cāng)頡語(yǔ)言的語(yǔ)法設(shè)計(jì)和應(yīng)用開發(fā),分為3篇共20章?;A(chǔ)篇(第1~9章)介紹倉(cāng)頡語(yǔ)言的安裝與開發(fā)環(huán)境搭建、數(shù)據(jù)類型、控制流、集合、函數(shù)式編程;進(jìn)階篇(第10~16章)介紹倉(cāng)頡語(yǔ)言的面向?qū)ο缶幊獭U(kuò)展、模塊管理和包、標(biāo)準(zhǔn)包和單元測(cè)試;高級(jí)篇(第17~20章)介紹倉(cāng)頡語(yǔ)言的元編程、跨語(yǔ)言編程并發(fā)編程和網(wǎng)絡(luò)編程。本書適用于對(duì)倉(cāng)頡語(yǔ)言感興趣的編程愛(ài)好者,也適用于在校計(jì)算機(jī)專業(yè)學(xué)生,本書可以作為倉(cāng)頡語(yǔ)言學(xué)習(xí)者的入門參考書,也可以作為大專院校倉(cāng)頡語(yǔ)言課程的學(xué)習(xí)教材。

作者簡(jiǎn)介

  徐禮文,北京理工大學(xué)信息技術(shù)創(chuàng)新學(xué)院教研中心副主任、華為開發(fā)者專家(HDE)、開放原子開源基金會(huì)教育認(rèn)證講師、51CTO開源社區(qū)專家、潤(rùn)和軟件社區(qū)專家、華為倉(cāng)頡語(yǔ)言社區(qū)專家,華為倉(cāng)頡語(yǔ)言最早期布道者和商業(yè)項(xiàng)目參與者。主要從事跨平臺(tái)技術(shù)、人工智能、區(qū)塊鏈,以及數(shù)字化架構(gòu)方向的研究和技術(shù)指導(dǎo)工作,對(duì)國(guó)內(nèi)外相關(guān)領(lǐng)域的技術(shù)、理論和實(shí)踐有很深的理解和研究。

圖書目錄

基  礎(chǔ)  篇
第1章  倉(cāng)頡語(yǔ)言介紹 3
1.1  倉(cāng)頡語(yǔ)言的主要特征 3
1.2  倉(cāng)頡語(yǔ)言的特點(diǎn) 4
1.3  倉(cāng)頡語(yǔ)言對(duì)中國(guó)軟件產(chǎn)業(yè)的價(jià)值 5
1.3.1  自研編程語(yǔ)言的價(jià)值 5
1.3.2  倉(cāng)頡語(yǔ)言的價(jià)值 7
1.4  本章小結(jié) 8
第2章  安裝與配置 9
2.1  Linux環(huán)境搭建(Ubuntu) 9
2.1.1  操作系統(tǒng)要求 9
2.1.2  倉(cāng)頡工具鏈的安裝 10
2.1.3  混合開發(fā)環(huán)境配置 11
2.2  Windows環(huán)境搭建 14
2.2.1  倉(cāng)頡工具鏈的安裝 14
2.2.2  安裝CangjieStudio開發(fā)工具 14
2.3  第1個(gè)倉(cāng)頡程序 20
2.3.1  創(chuàng)建項(xiàng)目目錄 20
2.3.2  第1個(gè)“Hello, World!”程序 20
2.3.3  編譯執(zhí)行倉(cāng)頡程序 21
2.4  本章小結(jié) 21
第3章  編程基礎(chǔ) 22
3.1  程序結(jié)構(gòu) 22
3.2  關(guān)鍵字 23
3.3  標(biāo)識(shí)符 24
3.3.1  普通標(biāo)識(shí)符 24
3.3.2  原始標(biāo)識(shí)符 24
3.4  注釋 25
3.4.1  單行注釋 25
3.4.2  多行注釋 25
3.5  變量和常量 26
3.5.1  定義變量 26
3.5.2  定義常量 27
3.5.3  作用域 27
3.5.4  初始化 28
3.6  代碼編寫規(guī)范 29
3.7  本章小結(jié) 30
第4章  數(shù)據(jù)類型 31
4.1  整數(shù)類型 31
4.1.1  整數(shù)類型的表示范圍 31
4.1.2  整數(shù)類型的運(yùn)算 32
4.2  浮點(diǎn)類型 36
4.3  布爾類型 38
4.4  字符類型 38
4.5  字符串類型 39
4.5.1  單行字符串 39
4.5.2  多行字符串 40
4.5.3  插值字符串 41
4.5.4  字符串操作 41
4.6  Unit類型 42
4.7  元組類型 42
4.7.1  元組定義 42
4.7.2  元組類型的字面量 42
4.8  區(qū)間類型 43
4.8.1  左閉右開區(qū)間 43
4.8.2  左閉右閉區(qū)間 43
4.9  Nothing類型 44
4.10  枚舉類型 44
4.10.1  enum的定義和使用 44
4.10.2  enum值 45
4.10.3  enum的模式匹配 46
4.11  本章小結(jié) 47
第5章  類型轉(zhuǎn)換 48
5.1  數(shù)值類型之間的轉(zhuǎn)換 48
5.2  Char和UInt32之間的轉(zhuǎn)換 49
5.3  is和as操作符 50
5.3.1  is操作符 50
5.3.2  as操作符 51
5.4  使用Convert庫(kù)進(jìn)行類型轉(zhuǎn)換 51
5.4.1  字符串轉(zhuǎn)布爾類型 51
5.4.2  字符串轉(zhuǎn)整數(shù)類型 52
5.4.3  字符串轉(zhuǎn)浮點(diǎn)類型 52
5.5  類型別名 52
5.6  本章小結(jié) 53
第6章  控制流 54
6.1  倉(cāng)頡控制流介紹 54
6.2  if表達(dá)式 54
6.2.1  使用if和else 55
6.2.2  使用else if 56
6.2.3  if表達(dá)式的類型 56
6.3  循環(huán)表達(dá)式 58
6.3.1  for…in基本用法 58
6.3.2  while表達(dá)式 60
6.3.3  do…while表達(dá)式 62
6.3.4  break和continue表達(dá)式 63
6.4  本章小結(jié) 66
第7章  匹配模式 67
7.1  switch與match對(duì)比 67
7.2  match表達(dá)式 67
7.2.1  含待匹配值的match表達(dá)式 67
7.2.2  不含待匹配值的match表達(dá)式 70
7.2.3  match表達(dá)式的類型 70
7.3  匹配模型 71
7.3.1  常量模式 71
7.3.2  通配符模式 72
7.3.3  變量模式 72
7.3.4  元組模式 73
7.3.5  類模式 73
7.3.6  枚舉模式 74
7.3.7  嵌套組合模式 76
7.4  模式的可反駁性 76
7.4.1  可反駁模式 77
7.4.2  不可反駁模式 77
7.5  本章小結(jié) 79
第8章  集合類型 80
8.1  集合類型介紹 80
8.2  Array 80
8.2.1  數(shù)組定義 81
8.2.2  訪問(wèn)數(shù)組成員 81
8.2.3  數(shù)組元素操作 83
8.2.4  多維數(shù)組 83
8.3  ArrayList 84
8.3.1  構(gòu)造ArrayList 84
8.3.2  訪問(wèn)ArrayList成員 84
8.3.3  修改ArrayList 86
8.3.4  增加ArrayList的大小 88
8.4  HashSet 89
8.4.1  HashSet初始化 89
8.4.2  訪問(wèn)HashSet成員 89
8.4.3  HashSet操作 91
8.5  HashMap 92
8.5.1  HashMap初始化 92
8.5.2  訪問(wèn)HashMap成員 93
8.5.3  HashMap操作 94
8.6  本章小結(jié) 96
第9章  函數(shù) 97
9.1  函數(shù)定義 97
9.1.1  參數(shù)列表 97
9.1.2  函數(shù)返回值類型 99
9.1.3  函數(shù)體 100
9.1.4  函數(shù)變量作用域 101
9.1.5  函數(shù)體類型 101
9.2  函數(shù)類型 102
9.2.1  函數(shù)類型作為參數(shù)類型 102
9.2.2  函數(shù)類型作為返回類型 103
9.2.3  函數(shù)類型作為變量類型 103
9.3  嵌套函數(shù) 103
9.4  Lambda表達(dá)式 104
9.4.1  Lambda表達(dá)式定義 104
9.4.2  Lambda表達(dá)式調(diào)用 105
9.5  函數(shù)閉包 105
9.6  函數(shù)調(diào)用語(yǔ)法糖 106
9.6.1  尾隨閉包 106
9.6.2  流表達(dá)式 107
9.7  函數(shù)重載 109
9.7.1  函數(shù)重載定義 109
9.7.2  函數(shù)重載決議 112
9.8  操作符重載 113
9.8.1  操作符重載函數(shù)定義和使用 114
9.8.2  可以被重載的操作符 115
9.9  mut函數(shù) 116
9.10  遞歸函數(shù) 117
9.11  本章小結(jié) 118
  
進(jìn)  階  篇
第10章  面向?qū)ο缶幊?121
10.1  面向?qū)ο蟪绦蛟O(shè)計(jì) 121
10.1.1  什么是面向?qū)ο缶幊?121
10.1.2  面向過(guò)程與面向?qū)ο?121
10.1.3  面向?qū)ο缶幊痰奶卣?123
10.2  結(jié)構(gòu)體(Struct) 125
10.2.1  如何選擇結(jié)構(gòu)體和類 125
10.2.2  定義結(jié)構(gòu)體 126
10.2.3  構(gòu)造函數(shù) 127
10.2.4  成員變量 129
10.2.5  成員函數(shù) 130
10.2.6  成員的可見修飾符 131
10.2.7  創(chuàng)建結(jié)構(gòu)體實(shí)例 133
10.2.8  mut函數(shù) 134
10.3  類(Class) 135
10.3.1  定義類 136
10.3.2  構(gòu)造函數(shù) 137
10.3.3  成員變量 140
10.3.4  成員函數(shù) 141
10.3.5  可見修飾符 142
10.3.6  prop屬性 144
10.3.7  創(chuàng)建對(duì)象 147
10.4  抽象類(Abstract Class) 148
10.4.1  抽象類的作用 148
10.4.2  抽象類的定義 148
10.5  類的繼承 149
10.5.1  類的繼承條件 150
10.5.2  抽象屬性和抽象函數(shù) 153
10.5.3  單繼承 154
10.5.4  多態(tài)性 156
10.5.5  子類調(diào)用父類構(gòu)造函數(shù) 156
10.5.6  覆蓋和重定義 158
10.6  接口(Interface) 160
10.6.1  接口特點(diǎn) 160
10.6.2  接口定義 160
10.6.3  接口繼承 164
10.6.4  接口實(shí)現(xiàn) 166
10.6.5  Any類型 168
10.7  面向?qū)ο蟀咐贺澇陨哂螒?169
10.7.1  設(shè)計(jì)類結(jié)構(gòu) 169
10.7.2  創(chuàng)建項(xiàng)目 170
10.7.3  地圖類實(shí)現(xiàn) 170
10.7.4  食物類實(shí)現(xiàn) 174
10.7.5  蛇類實(shí)現(xiàn) 176
10.7.6  玩家類實(shí)現(xiàn) 182
10.7.7  編譯和運(yùn)行 189
10.8  本章小結(jié) 190
第11章  泛型 191
11.1  泛型基礎(chǔ)概念 191
11.2  泛型函數(shù) 192
11.2.1  全局泛型函數(shù) 192
11.2.2  局部泛型函數(shù) 194
11.2.3  泛型成員函數(shù) 194
11.2.4  靜態(tài)泛型函數(shù) 195
11.3  泛型結(jié)構(gòu)體 196
11.4  泛型類 197
11.5  泛型枚舉 199
11.6  泛型的類型別名 200
11.7  泛型接口 200
11.7.1  泛型接口格式 200
11.7.2  定義生成器接口 201
11.7.3  定義數(shù)據(jù)庫(kù)操作接口 202
11.8  泛型約束 203
11.8.1  接口約束 204
11.8.2  子類型約束 204
11.9  本章小結(jié) 205
第12章  擴(kuò)展 206
12.1  擴(kuò)展的定義 206
12.1.1  接口擴(kuò)展 207
12.1.2  直接擴(kuò)展 209
12.2  擴(kuò)展的孤兒規(guī)則 210
12.3  擴(kuò)展的訪問(wèn)和遮蓋 211
12.4  擴(kuò)展的導(dǎo)入導(dǎo)出 212
12.4.1  直接擴(kuò)展的導(dǎo)入導(dǎo)出 213
12.4.2  接口擴(kuò)展的導(dǎo)入導(dǎo)出 213
12.5  本章小結(jié) 215
第13章  錯(cuò)誤處理 216
13.1  異常(Exception) 216
13.1.1  常見運(yùn)行時(shí)異常 217
13.1.2  異常處理 218
13.2  Option類型用于錯(cuò)誤處理 221
13.2.1  模式匹配 221
13.2.2  coalescing操作符(??) 222
13.2.3  問(wèn)號(hào)操作符(?) 222
13.2.4  getOrThrow函數(shù) 223
13.3  本章小結(jié) 223
第14章  模塊管理和包 224
14.1  倉(cāng)頡包和模塊介紹 224
14.2  模塊管理工具 225
14.2.1  CPM常用命令 225
14.2.2  模塊配置文件 227
14.3  包的定義 229
14.3.1  包的聲明 229
14.3.2  包的成員 232
14.3.3  默認(rèn)包 232
14.4  包之間相互調(diào)用 232
14.4.1  import語(yǔ)句 233
14.4.2  import as語(yǔ)句 233
14.5  本章小結(jié) 235
第15章  常用標(biāo)準(zhǔn)包 236
15.1  core包 237
15.2  random包 238
15.2.1  Random類 238
15.2.2  Random使用 238
15.3  time包 239
15.3.1  定時(shí)器 239
15.3.2  周期性定時(shí)器 240
15.3.3  獲取時(shí)間的詳細(xì)信息 240
15.3.4  同一時(shí)間在不同時(shí)區(qū)的墻上時(shí)間 241
15.3.5  從字符串中解析得到時(shí)間 242
15.4  os包 242
15.4.1  獲取各類系統(tǒng)信息 243
15.4.2  文件內(nèi)容相關(guān)操作 244
15.4.3  文件信息相關(guān)操作 245
15.4.4  進(jìn)程相關(guān)信息操作 246
15.4.5  進(jìn)程start及相關(guān)函數(shù) 247
15.5  io包 248
15.5.1  StringStream 249
15.5.2  FileStream 252
15.5.3  Console 254
15.6  log包 255
15.6.1  SimpleLogger 255
15.6.2  根據(jù)日志級(jí)別輸?shù)轿募?257
15.7  JSON包 258
15.7.1  JsonValue 259
15.7.2  JSON中轉(zhuǎn)義字符處理 264
15.8  serialization包 265
15.8.1  Serializable 265
15.8.2  DataModel 266
15.8.3  DataModelStruct 267
15.8.4  HashSet和HashMap序列化 270
15.9  regex包 272
15.9.1  regex 272
15.9.2  Matcher 274
15.9.3  MatchData 277
15.9.4  RegexOption 279
15.10  url包 280
15.10.1  url包主要接口 280
15.10.2  URL 280
15.10.3  Form 281
15.11  本章小結(jié) 282
第16章  單元測(cè)試 283
16.1  什么是單元測(cè)試 283
16.2  修飾器宏介紹 284
16.3  編譯與運(yùn)行測(cè)試 284
16.4  修飾類的使用 286
16.4.1  @Test修飾器 286
16.4.2  @Test修飾Top-level函數(shù)的使用 288
16.5  自定義邏輯函數(shù)的使用 289
16.6  模塊測(cè)試和包測(cè)試 291
16.7  本章小結(jié) 293
     
高  級(jí)  篇
第17章  跨語(yǔ)言互操作 297
17.1  與C語(yǔ)言互操作 297
17.1.1  倉(cāng)頡調(diào)用C函數(shù) 297
17.1.2  倉(cāng)頡與C類型映射 300
17.1.3  C調(diào)用倉(cāng)頡函數(shù) 302
17.1.4  通過(guò)FFI操作SQLite數(shù)據(jù)庫(kù) 303
17.1.5  通過(guò)FFI操作MongoDB數(shù)據(jù)庫(kù) 309
17.2  與Python語(yǔ)言互操作 315
17.2.1  編譯Python源碼獲取動(dòng)態(tài)庫(kù) 316
17.2.2  Python的動(dòng)態(tài)庫(kù)查找策略 317
17.2.3  Python庫(kù)的導(dǎo)入和加載 317
17.2.4  PythonBuiltins內(nèi)建函數(shù)類 319
17.2.5  倉(cāng)頡與Python類型映射 322
17.2.6  倉(cāng)頡與Python的注冊(cè)回調(diào) 333
17.3  本章小結(jié) 337
第18章  并發(fā)編程 338
18.1  并發(fā)與并行 338
18.2  線程和多線程模型 339
18.3  創(chuàng)建一個(gè)倉(cāng)頡線程 340
18.4  等待線程結(jié)束并獲取返回值 341
18.4.1  getResult函數(shù)返回值 343
18.4.2  設(shè)置阻塞結(jié)果返回的時(shí)間 343
18.5  線程睡眠指定時(shí)長(zhǎng) 344
18.6  線程的同步機(jī)制 344
18.6.1  原子操作 345
18.6.2  可重入互斥鎖 348
18.6.3  Monitor 350
18.6.4  MultiConditionMonitor 352
18.6.5  synchronized關(guān)鍵字 354
18.7  本章小結(jié) 356
第19章  元編程 357
19.1  宏 358
19.1.1  宏的定義 358
19.1.2  宏的導(dǎo)入 359
19.1.3  非屬性宏 360
19.1.4  屬性宏 362
19.1.5  嵌套宏 364
19.2  Tokens 368
19.2.1  Token類型 368
19.2.2  Tokens類型 371
19.2.3  quote表達(dá)式 372
19.3  元編程案例 374
19.3.1  使用宏優(yōu)化遞歸 374
19.3.2  使用宏打印任意類型 376
19.4  本章小結(jié) 379
第20章  網(wǎng)絡(luò)編程 380
20.1  網(wǎng)絡(luò)參考模型 380
20.1.1  OSI/RM參考模型 380
20.1.2  TCP/IP參考模型 381
20.2  TCP協(xié)議 384
20.2.1  TCP協(xié)議特點(diǎn) 384
20.2.2  TCP報(bào)文段 385
20.2.3  TCP工作流程 386
20.3  Socket編程 388
20.3.1  Socket概念 388
20.3.2  創(chuàng)建TCP服務(wù)器端 389
20.3.3  創(chuàng)建TCP客戶端 391
20.4  Socket案例:多人聊天室 393
20.4.1  創(chuàng)建群聊服務(wù)器端 394
20.4.2  創(chuàng)建群聊客戶端 399
20.5  HTTP協(xié)議 404
20.5.1  HTTP協(xié)議介紹 404
20.5.2  創(chuàng)建HTTP服務(wù)器端 406
20.5.3  創(chuàng)建HTTP客戶端 411
20.6  HTTP案例:MVC博客 413
20.6.1  博客效果介紹 413
20.6.2  創(chuàng)建項(xiàng)目工程 415
20.6.3  創(chuàng)建博客服務(wù)器 416
20.6.4  創(chuàng)建頁(yè)面控制器 417
20.6.5  創(chuàng)建數(shù)據(jù)層 419
20.6.6  創(chuàng)建數(shù)據(jù)服務(wù)層 423
20.6.7  實(shí)現(xiàn)數(shù)據(jù)加載與頁(yè)面綁定 426
20.7  本章小結(jié) 432
附錄A  操作符 433
  
IV
V
 
 

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)