倉頡語言極速入門——UI全場景實戰
張雲波
相關主題
商品描述
"本書以倉頡的UI實戰為主,語法部分介紹了主要組成部分,快速且形象地闡述了倉頡編程語言的主要特性,讓零編程基礎的新手都可以迅速入門倉頡,在此基礎上結合因特網熱門垂直領域的潮流App設計,帶您深入場景式UI開發體驗。利用CangjieUI+鴻蒙的組合,能夠讓我們在開發基於DSL的App應用時超快上手,從而可以快速開發基於鴻蒙乃至跨平臺的應用UI。 本書共兩部分。第1~9章介紹倉頡基礎編程知識,從零起步介紹了倉頡主要特性如面向對象編程、面向接口編程、函數式編程等,聚焦在語法層面。第10~21章基於強大的CangjieUI框架,實際切入各種場景化的精美AppUI開發案例,助力讀者徹底地掌握使用CangjieUI框架開發各種復雜AppUI的技巧。本書案例豐富,實操性系統性強,輔助讀者更快地掌握本書的要點、難點。 本書既可以成為倉頡初學者的入門書,也可以為想從事倉頡應用開發的人士或培訓機構,提供前置知識參考。"
目錄大綱
第1章 倉頡概覽 1
1.1 倉頡的定位 1
1.2 倉頡主要特性 1
第2章 第1個倉頡程序 4
2.1 安裝及查看倉頡版本 4
2.2 Hello World 5
2.2.1 編寫第1個程序 5
2.2.2 代碼編譯和執行 5
第3章 倉頡語法基礎 6
3.1 常量和變量 6
3.2 類型自動推斷 8
3.3 兩種數值類型 8
3.4 布爾類型 8
3.5 流向控制 9
3.6 字符串類型 11
3.7 區間類型 12
3.8 循環控制 12
3.9 字符串插值 13
3.10 函數 13
3.11 運算符 16
3.12 使用庫函數 16
3.13 使用集合類型 17
3.14 本章小結 20
第4章 高級類型 21
4.1?記錄類型 21
4.2?枚舉類型 24
4.3?類 25
4.3.1?類的封裝 25
4.3.2?類的繼承和多態 29
4.4?類型轉換 33
4.5?本章小結 37
第5章 面向接口編程 38
5.1 接口 38
5.2 擴展既有類型 40
5.3 面向接口編程 41
5.4 定義基礎接口 43
5.5 實現接口的類型 44
5.6 給接口擴展默認的實現 53
5.7 枚舉類型的接口實現 55
5.8 覆蓋默認行為 55
5.9 接口的通用化 56
5.10 本章小結 58
第6章 函數高級特性 59
6.1 函數類型 59
6.2 使用函數類型的3種方式 60
6.3 閉包表達式 62
6.4 尾隨閉包 63
6.5 函數重載 65
6.6 構造函數 66
6.7 系統中的高級函數 66
6.7.1 map 67
6.7.2 compactMap 68
6.7.3 filter 68
6.7.4 reduce 68
6.8 本章小結 69
第7章 程序異常處理 70
7.1 異常的分類 70
7.2 拋出一個異常 71
7.3 Result類型 73
7.4 解包Result類型 74
7.5 Option類型 76
7.6 本章小結 77
第8章 泛型編程 78
8.1 常見的泛型化案例 78
8.2 泛型接口 79
8.3 泛型類型 81
8.4 泛型函數 83
8.5 泛型約束 83
8.6 本章小結 84
第9章 異步編程 85
9.1 新線程 85
9.2 異步等待 92
9.3 線程休眠 103
第10章 倉頡UI框架 104
10.1 文件組織 104
10.2 聲明式語法 105
10.3 狀態管理 105
10.4 生命周期 107
10.5 裝飾器變量 107
10.6 樣式 108
10.7 常用組件 109
10.7.1 容器組件 109
10.7.2 獨立組件 112
10.8 系統接口現狀 115
第11章 倉頡UI實戰案例:咖啡杯 116
11.1 杯型定義 117
11.2 定義資源 118
11.2.1 圖片資源 118
11.2.2 文字資源 118
11.2.3 顏色資源 119
11.3 新建組件的源碼文件 120
11.4 數據源和狀態變量定義 120
11.5 單個杯型的佈局 121
11.6 樣式定義 121
11.7 條件樣式 122
11.8 用戶互動 122
11.9 循環渲染 123
11.10 容器包裝 124
11.10.1 序號顯示 124
11.10.2 均分空間 125
11.10.3 描邊和圓角 126
11.11 組合 127
11.12 組件重用 128
第12章 倉頡UI案例:飛我電瓶車 130
12.1 資源導入 131
12.2 啟動頁結構 131
12.3 最終啟動頁 137
12.4 加載指示器組件 140
12.4.1 組件結構 140
12.4.2 旋轉動畫 141
12.5 目的地頁 141
12.5.1 歷史數據 141
12.5.2 狀態變量 142
12.5.3 下單函數 142
12.5.4 彈性面板組件 143
12.5.5 List組件 143
12.5.6 組合 144
12.6 下單成功提示頁 149
12.6.1 狀態變量 149
12.6.2 純組件 150
12.6.3 預覽用組件 152
12.6.4 組合 153
12.7 騎手當前位置頁 156
12.7.1 狀態變量 156
12.7.2 純組件 157
12.7.3 預覽用組件 158
第13章 倉頡UI案例:鴻蒙之家 160
13.1 資源導入 160
13.2 啟動頁 161
13.2.1 橫幅數據 161
13.2.2 組件結構 162
13.2.3 開始按鈕 163
13.3 首頁 164
13.3.1 全屋智能家電數據 164
13.3.2 導航區域 165
13.3.3 數據網格 166
13.3.4 選項條 169
13.3.5 組合 170
13.4 開關組件 170
13.4.1 組件結構 170
13.4.2 狀態變量 171
13.4.3 顏色定義 171
13.4.4 單擊動畫 171
13.4.5 純組件 172
13.4.6 預覽用組件 172
13.4.7 組合 173
13.5 房屋智能讀數結構 173
13.6 用電量組件 174
13.6.1 狀態變量 174
13.6.2 組件結構 175
13.6.3 組合測試 177
13.7 詳情頁 181
13.7.1 狀態變量 181
13.7.2 導航欄 182
13.7.3 溫濕度卡片 182
13.7.4 用電量柱狀圖 184
13.7.5 設備列表卡片 184
13.7.6 組合測試 187
第14章 倉頡UI案例:卡星租車 196
14.1 資源導入 198
14.2 啟動頁結構 199
14.2.1 躍動的標志 199
14.2.2 中部文本 200
14.2.3 底部按鈕 201
14.2.4 組合 202
14.3 車型數據結構 202
14.4 地圖定位頁 203
14.5 預訂頁 205
14.5.1 搜索欄 206
14.5.2 標題欄 207
14.5.3 篩選欄 207
14.5.4 車型列表區域 209
14.5.5 組合 213
14.6 車型詳情頁 213
14.6.1 狀態變量 214
14.6.2 純組件 214
14.6.3 組合 223
第15章 倉頡UI案例:智能打蒜器 224
15.1 資源導入 225
15.2 首頁結構 226
15.3 功能層 226
15.3.1 狀態變量 226
15.3.2 面板控制區域 226
15.3.3 文字提示區域 227
15.4 開關燈指示層 227
第16章 倉頡UI案例:絕汁水果 229
16.1 資源導入 230
16.2 啟動頁結構 231
16.2.1 橫幅數據 231
16.2.2 橫幅組件 231
16.2.3 進入按鈕 233
16.2.4 組合 233
16.3 首頁 234
16.3.1 狀態變量 234
16.3.2 標題欄 236
16.3.3 水果卡片 237
16.3.4 組合 240
16.4 詳情頁 240
16.4.1 狀態變量 241
16.4.2 添加至購物車函數 241
16.4.3 頁面結構 242
16.4.4 組合 246
第17章 倉頡UI案例:暢游 247
17.1 資源導入 248
17.2 啟動頁結構 249
17.2.1 背景層 249
17.2.2 文字層 250
17.2.3 動效層 252
17.2.4 組合 254
17.3 首頁 255
17.3.1 旅游產品數據 255
17.3.2 狀態變量 256
17.3.3 導航欄 256
17.3.4 文字欄 257
17.3.5 篩選欄 257
17.3.6 旅游卡片列表 258
17.3.7 選項卡 260
17.3.8 組合 261
17.4 詳情頁 262
17.4.1 狀態變量 262
17.4.2 背景層 262
17.4.3 導航欄 262
17.4.4 品名和價格區 263
17.4.5 預訂區 265
17.4.6 組合 268
第18章 倉頡UI案例:起司播客 270
18.1 資源導入 271
18.2 首頁結構 272
18.2.1 導航欄 272
18.2.2 分類標題 273
18.2.3 分類卡片列表 273
18.2.4 篩選欄 278
18.2.5 音樂列表 280
18.2.6 組合 284
18.3 頻道頁 285
18.3.1?播客作品數據 285
18.3.2 導航欄 286
18.3.3 播客個人信息區域 286
18.3.4 播客作品列表 287
18.3.5 組合 289
18.4 播放頁 290
18.4.1 狀態變量 290
18.4.2 導航欄 291
18.4.3 作品大圖 292
18.4.4 作品名和作者 292
18.4.5 播放控制按鈕 293
18.4.6 組合 294
第19章 倉頡UI案例:世界巡游團 295
19.1 資源導入 296
19.2 啟動頁 297
19.2.1 封面組件 297
19.2.2 啟動按鈕組件 302
19.2.3 背景色 303
19.2.4 右側封面修正 303
19.2.5 組合 304
19.3 首頁 306
19.3.1 導航組件 306
19.3.2 口號文字組件 308
19.3.3 搜索條組件 309
19.3.4 篩選按鈕欄 311
19.3.5 推薦卡片列表組件 315
19.3.6 選項卡組件 331
19.3.7 首頁的調整優化 335
19.4 詳情頁 338
19.4.1 導航欄 338
19.4.2 縮略圖列表 340
19.4.3 詳情卡片 342
19.4.4 組合 350
第20章 倉頡UI案例:生鮮配送網 353
20.1 資源導入 354
20.2 首頁結構 355
20.3 導航 355
20.3.1 陰影層 356
20.3.2 菜單層 357
20.3.3 菜單陰影效果 357
20.3.4 菜單內容 358
20.4 上半部分 362
20.4.1 背景圖片層 363
20.4.2 主題文字層 367
20.4.3 右側指示圖片層 371
20.4.4 組合 372
20.5 中間部分 379
20.6 下半部分 380
20.6.1 卡片結構 380
20.6.2 卡片背景 381
20.6.3 卡片內容 383
20.6.4 卡片列表 388
20.6.5 卡片列表容器背景 393
20.6.6 組合 394
20.7 下半屏預覽 395
第21章 倉頡UI案例:溢彩美妝網 397
21.1 資源導入 398
21.2 啟動頁結構 399
21.3 背景層 399
21.3.1 漸變流動光影 399
21.3.2 圖形襯邊 401
21.3.3 組合 407
21.4 導航 410
21.4.1 大標題 410
21.4.2 導航菜單 410
21.4.3 右側圖標組 411
21.4.4 組合 412
21.5 主題文字區 414
21.5.1 小標題 414
21.5.2 大標題 415
21.5.3 副標題 416
21.5.4 按鈕組 416
21.5.5 組合 417
21.6 圖片區 420
21.6.1 雙卡片組 420
21.6.2 橫幅卡片 421
21.6.3 組合 421
21.7 評價浮層 424
21.7.1 評價卡片 424
21.7.2 評價頭像 425
21.7.3 組合 425
21.8 組裝首頁 427
VI
VII