書(shū)單推薦 新書(shū)推薦 |
倉(cāng)頡編程從入門(mén)到實(shí)踐 讀者對(duì)象:普通讀者 ![]()
隨著萬(wàn)物互聯(lián)以及智能時(shí)代的到來(lái),軟件的形態(tài)將發(fā)生巨大的變化。一方面,移動(dòng)應(yīng)用和移動(dòng)互聯(lián)網(wǎng)領(lǐng)域仍然
強(qiáng)力驅(qū)動(dòng)人機(jī)交互、設(shè)備協(xié)同、智能化、安全性等方向的創(chuàng)新;另一方面,人工智能也同樣驅(qū)動(dòng)軟件朝智能化、端
邊云協(xié)同等方向演進(jìn)。新技術(shù)、新場(chǎng)景下應(yīng)用軟件的開(kāi)發(fā)對(duì)編程語(yǔ)言提出了新的訴求和挑戰(zhàn)。
華為自研的倉(cāng)頡編程語(yǔ)言作為一款面向全場(chǎng)景應(yīng)用開(kāi)發(fā)的現(xiàn)代編程語(yǔ)言,通過(guò)現(xiàn)代語(yǔ)言特性的集成、全方位的
編譯優(yōu)化和運(yùn)行時(shí)實(shí)現(xiàn),以及開(kāi)箱即用的工具鏈支持,為開(kāi)發(fā)者打造了友好開(kāi)發(fā)體驗(yàn)和卓越程序性能。本書(shū)主要介
紹倉(cāng)頡編程語(yǔ)言開(kāi)發(fā),內(nèi)容涉及倉(cāng)頡編程語(yǔ)言的通用編程概念、基本數(shù)據(jù)類(lèi)型、類(lèi)、接口、擴(kuò)展、模式匹配、泛型、
集合類(lèi)型、異常處理、包、基礎(chǔ)I/O操作、函數(shù)式編程、并發(fā)編程、宏編程、網(wǎng)絡(luò)編程、CJPM包管理、自動(dòng)化測(cè)試
等眾多話題,可謂倉(cāng)頡編程語(yǔ)言的“百科全書(shū)”。其中,綜合實(shí)戰(zhàn)部分演示了KV數(shù)據(jù)庫(kù)、雪花算法、HarmonyOS瀑
布流的實(shí)現(xiàn)過(guò)程,可以令讀者從零開(kāi)始掌握倉(cāng)頡編程語(yǔ)言。
本書(shū)實(shí)例豐富,將理論講解最終落實(shí)到代碼實(shí)現(xiàn)上。本書(shū)內(nèi)容由淺入深、層層推進(jìn)、結(jié)構(gòu)清晰、實(shí)例豐富、通
俗易懂、實(shí)用性強(qiáng),適合倉(cāng)頡編程語(yǔ)言的初學(xué)者和進(jìn)階讀者作為自學(xué)教程,也可作為培訓(xùn)學(xué)校和各大院校的相關(guān)專(zhuān)
業(yè)的教學(xué)參考書(shū)。
柳偉衛(wèi)
---------------------------- 柳偉衛(wèi),網(wǎng)名老衛(wèi)、waylau,在IT公司擔(dān)任項(xiàng)目經(jīng)理、架構(gòu)師、高級(jí)技術(shù)顧問(wèn)等職位,是CSDN、 開(kāi)源中國(guó)、阿里云開(kāi)發(fā)者、華為開(kāi)發(fā)者等技術(shù)社區(qū)專(zhuān)家,慕課網(wǎng)、華為開(kāi)發(fā)者聯(lián)盟社區(qū)認(rèn)證講師,HarmonyOS技術(shù)達(dá)人,曾獲2021、2022年度牛人之星、2022年度OpenHarmony開(kāi)源貢獻(xiàn)之星。著有《跟老衛(wèi)學(xué)HarmonyOS開(kāi)發(fā)》等開(kāi)源書(shū),并出版了《鴻蒙HarmonyOS手機(jī)應(yīng)用開(kāi)發(fā)實(shí)戰(zhàn)》《鴻蒙HarmonyOS應(yīng)用開(kāi)發(fā)從入門(mén)到精通》《Spring Boot 2.0企業(yè)級(jí)應(yīng)用開(kāi)發(fā)實(shí)戰(zhàn)》《Spring Cloud 微服務(wù)架構(gòu)開(kāi)發(fā)實(shí)戰(zhàn)》《Spring 5 開(kāi)發(fā)大全》《Cloud Native 分布式架構(gòu)原理與實(shí)踐》《大型互聯(lián)網(wǎng)應(yīng)用輕量級(jí)架構(gòu)實(shí)戰(zhàn)》等專(zhuān)著。
第1章 倉(cāng)頡編程語(yǔ)言初體驗(yàn)
1.1 歡迎進(jìn)入倉(cāng)頡編程語(yǔ)言世界 2
1.1.1 倉(cāng)頡特性 2
1.1.2 高效編程 3
1.1.3 安全可靠 4
1.1.4 輕松并發(fā) 4
1.1.5 卓越性能 4
1.2 安裝倉(cāng)頡編程語(yǔ)言 5
1.3 搭建倉(cāng)頡編程語(yǔ)言開(kāi)發(fā)環(huán)境 10
1.4 實(shí)戰(zhàn):開(kāi)發(fā)第一個(gè)倉(cāng)頡編程語(yǔ)言應(yīng)用“Hello World!” 11
1.5 總結(jié) 13
1.6 習(xí)題:開(kāi)發(fā)“Hello World!”應(yīng)用 13
第2章 通用編程概念
2.1 變量與常量 15
2.1.1 變量 15
2.1.2 常量 17
2.2 標(biāo)識(shí)符與程序結(jié)構(gòu) 18
2.2.1 標(biāo)識(shí)符 18
2.2.2 程序結(jié)構(gòu) 19
2.3 函數(shù) 20
2.3.1 定義函數(shù) 21
2.3.2 函數(shù)參數(shù) 21
2.3.3 函數(shù)返回值 23
2.4 注釋 24
2.4.1 單行注釋 24
2.4.2 多行注釋 25
2.5 流程控制 25
2.5.1 分支 25
2.5.2 循環(huán) 27
2.6 實(shí)戰(zhàn):猜數(shù)字游戲 29
2.6.1 輸入數(shù)字 29
2.6.2 比較大小 30
2.6.3 循環(huán)輸入 31
2.6.4 運(yùn)行效果 31
2.7 結(jié)構(gòu)類(lèi)型 32
2.7.1 定義struct類(lèi)型 32
2.7.2 創(chuàng)建struct實(shí)例 37
2.7.3 mut函數(shù) 39
2.8 總結(jié) 39
2.9 習(xí)題:統(tǒng)計(jì)字符串的字符數(shù) 40
第3章 基本數(shù)據(jù)類(lèi)型
3.1 整數(shù)類(lèi)型 42
3.1.1 整數(shù)類(lèi)型字面量 42
3.1.2 字符字節(jié)字面量 43
3.1.3 整數(shù)類(lèi)型支持的操作符 43
3.2 浮點(diǎn)類(lèi)型 44
3.2.1 浮點(diǎn)類(lèi)型字面量 44
3.2.2 浮點(diǎn)類(lèi)型支持的操作符 45
3.3 布爾類(lèi)型 45
3.3.1 布爾類(lèi)型字面量 45
3.3.2 布爾類(lèi)型支持的操作符 46
3.4 字符類(lèi)型 46
3.4.1 字符類(lèi)型字面量 46
3.4.2 字符類(lèi)型支持的操作符 47
3.5 字符串類(lèi)型 47
3.5.1 字符串字面量 47
3.5.2 插值字符串 48
3.5.3 字符串類(lèi)型支持的操作 49
3.6 實(shí)戰(zhàn):操作字符串 49
3.6.1 構(gòu)造 50
3.6.2 查找 50
3.6.3 拼接 51
3.6.4 替換 52
3.7 元組類(lèi)型 52
3.7.1 元組類(lèi)型字面量 52
3.7.2 元組類(lèi)型的類(lèi)型參數(shù) 53
3.8 數(shù)組類(lèi)型 53
3.8.1 定義數(shù)組 54
3.8.2 訪問(wèn)數(shù)組 54
3.8.3 修改數(shù)組 55
3.8.4 數(shù)組的排序 56
3.8.5 VArray 57
3.9 區(qū)間類(lèi)型 58
3.10 Unit類(lèi)型 59
3.11 Nothing類(lèi)型 59
3.12 總結(jié) 60
3.13 習(xí)題:將包含句號(hào)的句子轉(zhuǎn)換為單詞 60
第4章 類(lèi)、接口及擴(kuò)展
4.1 類(lèi) 63
4.1.1 class定義 63
4.1.2 this類(lèi)型 69
4.1.3 創(chuàng)建對(duì)象 70
4.1.4 class的繼承 71
4.2 接口 76
4.2.1 接口定義 77
4.2.2 接口繼承 82
4.2.3 接口實(shí)現(xiàn) 84
4.2.4 Any類(lèi)型 86
4.3 屬性 86
4.3.1 屬性定義 87
4.3.2 屬性使用 91
4.4 子類(lèi)型關(guān)系 93
4.5 類(lèi)型轉(zhuǎn)換 96
4.5.1 數(shù)值類(lèi)型之間的轉(zhuǎn)換 97
4.5.2 Rune到UInt32和整數(shù)類(lèi)型到Rune的轉(zhuǎn)換 97
4.5.3 is和as操作符 98
4.6 直接擴(kuò)展 100
4.6.1 擴(kuò)展概述 100
4.6.2 直接擴(kuò)展 100
4.6.3 接口擴(kuò)展 102
4.7 擴(kuò)展訪問(wèn)規(guī)則 105
4.7.1 擴(kuò)展的修飾符 105
4.7.2 擴(kuò)展的孤兒規(guī)則 106
4.7.3 擴(kuò)展的訪問(wèn)和遮蓋 106
4.7.4 擴(kuò)展的導(dǎo)入和導(dǎo)出 109
4.8 總結(jié) 111
4.9 習(xí)題:面向?qū)ο蟮膱D形 111
第5章 模式匹配
5.1 模式概述 114
5.1.1 枚舉類(lèi)型 114
5.1.2 Option類(lèi)型 116
5.1.3 常量模式 117
5.1.4 通配符模式 118
5.1.5 綁定模式 118
5.1.6 tuple模式 119
5.1.7 類(lèi)型模式 120
5.1.8 enum模式 120
5.1.9 模式的嵌套組合 121
5.2 refutable模式和irrefutable模式 122
5.3 match 124
5.3.1 含匹配值的match表達(dá)式 124
5.3.2 沒(méi)有待匹配值的match表達(dá)式 125
5.4 if-let 125
5.5 while-let 126
5.6 模式適用場(chǎng)景 127
5.7 實(shí)戰(zhàn):猜數(shù)字游戲 129
5.7.1 輸入數(shù)字 129
5.7.2 比較大小 130
5.7.3 循環(huán)輸入 130
5.7.4 運(yùn)行效果 131
5.8 總結(jié) 132
5.9 習(xí)題:“剪刀石頭布”游戲 132
第6章 泛型
6.1 泛型概述 134
6.2 實(shí)戰(zhàn):泛型函數(shù) 134
6.2.1 全局泛型函數(shù) 135
6.2.2 局部泛型函數(shù) 136
6.2.3 泛型成員函數(shù) 136
6.2.4 靜態(tài)泛型函數(shù) 138
6.3 泛型接口 138
6.4 泛型類(lèi) 139
6.5 實(shí)戰(zhàn):泛型結(jié)構(gòu)體 139
6.6 泛型枚舉 140
6.7 泛型類(lèi)型的子類(lèi)型關(guān)系 141
6.8 類(lèi)型別名 141
6.9 泛型約束 142
6.10 總結(jié) 145
6.11 習(xí)題:動(dòng)物發(fā)聲模擬器 145
第7章 集合類(lèi)型
7.1 集合類(lèi)型概述 147
7.2 實(shí)戰(zhàn):使用ArrayList 147
7.2.1 ArrayList擴(kuò)容原理 147
7.2.2 創(chuàng)建ArrayList 148
7.2.3 訪問(wèn)ArrayList成員 148
7.2.4 修改ArrayList 149
7.2.5 增加ArrayList的大小 151
7.3 實(shí)戰(zhàn):使用HashSet 152
7.3.1 創(chuàng)建HashSet 152
7.3.2 訪問(wèn)HashSet成員 152
7.3.3 修改HashSet 153
7.4 實(shí)戰(zhàn):使用HashMap 154
7.4.1 創(chuàng)建HashMap 154
7.4.2 訪問(wèn)HashMap成員 155
7.4.3 修改HashMap 156
7.5 Iterable和Collections 158
7.6 總結(jié) 159
7.7 習(xí)題:名字的“漂亮度” 159
第8章 異常處理
8.1 定義異常 161
8.1.1 異常類(lèi) 161
8.1.2 Exception和Error的主要函數(shù)及其說(shuō)明 162
8.2 常見(jiàn)運(yùn)行時(shí)異常 162
8.3 實(shí)戰(zhàn):拋出和處理異常 163
8.3.1 拋出異常 163
8.3.2 普通try表達(dá)式 163
8.3.3 try-with-resources表達(dá)式 164
8.3.4 多個(gè)異常處理 165
8.4 使用Option 166
8.4.1 模式匹配 167
8.4.2 coalescing操作符“??” 167
8.4.3 問(wèn)號(hào)操作符“?” 168
8.4.4 getOrThrow函數(shù) 169
8.5 總結(jié) 169
8.6 習(xí)題:“剪刀石頭布”游戲的異常處理 169
第9章 包和模塊
9.1 包概述 172
9.2 包的聲明 172
9.3 頂層聲明的可見(jiàn)性 174
9.4 包的導(dǎo)入 175
9.4.1 使用import語(yǔ)句導(dǎo)入其他包中的聲明或定義 175
9.4.2 隱式導(dǎo)入core包 178
9.4.3 使用import as對(duì)導(dǎo)入的名字重命名 178
9.4.4 重導(dǎo)出一個(gè)導(dǎo)入的名字 180
9.5 程序入口 181
9.6 總結(jié) 182
9.7 習(xí)題:帶傳參的“名字的‘漂亮度’” 182
第10章 基礎(chǔ)I/O操作
10.1 I/O流概述 184
10.1.1 流的抽象 184
10.1.2 輸入流 184
10.1.3 輸出流 185
10.1.4 數(shù)據(jù)流分類(lèi) 186
10.2 I/O節(jié)點(diǎn)流 186
10.2.1 標(biāo)準(zhǔn)流 186
10.2.2 文件流 187
10.3 I/O處理流 189
10.3.1 緩沖流 190
10.3.2 字符串流 191
10.4 實(shí)戰(zhàn):讀寫(xiě)文件 193
10.4.1 準(zhǔn)備文件資源 193
10.4.2 讀取文件 193
10.4.3 寫(xiě)入文件 194
10.5 總結(jié) 195
10.6 習(xí)題:獲取文件元數(shù)據(jù) 195
第11章 函數(shù)式編程
11.1 定義函數(shù) 197
11.1.1 參數(shù)列表 197
11.1.2 函數(shù)返回值類(lèi)型 198
11.1.3 函數(shù)體 199
11.2 調(diào)用函數(shù) 200
11.3 函數(shù)類(lèi)型 202
11.3.1 函數(shù)類(lèi)型的常用示例 203
11.3.2 函數(shù)類(lèi)型的類(lèi)型參數(shù) 203
11.3.3 函數(shù)類(lèi)型作為參數(shù)類(lèi)型 204
11.3.4 函數(shù)類(lèi)型作為返回類(lèi)型 204
11.3.5 函數(shù)類(lèi)型作為變量類(lèi)型 204
11.4 Lambda表達(dá)式 205
11.4.1 Lambda表達(dá)式定義 205
11.4.2 Lambda表達(dá)式調(diào)用 207
11.5 閉包 207
11.6 函數(shù)調(diào)用語(yǔ)法糖 211
11.6.1 尾隨Lambda 211
11.6.2 Flow表達(dá)式 212
11.6.3 變長(zhǎng)參數(shù) 213
11.7 函數(shù)重載 215
11.7.1 函數(shù)重載的類(lèi)型 215
11.7.2 函數(shù)重載決議 218
11.8 const函數(shù) 219
11.9 實(shí)戰(zhàn):詞頻統(tǒng)計(jì) 221
11.9.1 準(zhǔn)備文件資源 221
11.9.2 統(tǒng)計(jì)詞頻函數(shù) 221
11.9.3 輸出詞頻函數(shù) 222
11.9.4 讀取文件統(tǒng)計(jì)詞頻 223
11.10 總結(jié) 224
11.11 習(xí)題:刪除字符串中出現(xiàn)次數(shù)最少的字符 224
第12章 并發(fā)編程
12.1 并發(fā)概述 226
12.1.1 線程與并發(fā) 226
12.1.2 并發(fā)與并行的區(qū)別 227
12.1.3 倉(cāng)頡線程模型 227
12.2 創(chuàng)建線程 228
12.3 訪問(wèn)線程 229
12.3.1 使用Future
你還可能感興趣
我要評(píng)論
|








