热门搜索: 中考 高考 考试 开卷17
服务电话 024-23945002/96192
 

华为仓颉语言编程从入门到精通

编号:
wx1203593791
销售价:
¥91.56
(市场价: ¥109.00)
赠送积分:
92
数量:
   
商品介绍

华为仓颉语言编程从新手到专家实战宝典:基础语法+100个精选实战案例+大量即用型优质代码,带你全流程掌握仓颉,驾驭未来 ,全面解析鸿蒙生态!

华为自研的仓颉(Cangjie)语言作为一款面向全场景应用开发的现代编程语言,通过现代语言特性的集成、全方位的编译优化和运行时实现,以及开箱即用的工具链支持,为开发者打造了友好的开发体验和卓越的程序性能。本书循序渐进地讲解了仓颉语言的核心知识,并通过具体实例的实现过程演练了开发仓颉语言程序的关键方法和流程。全书共19章,分别讲解了从仓颉语言的基础语法、数据结构、面向对象编程、网络编程到多线程与并发处理等内容,最后通过实战项目——圆角图片视图库的开发,系统展示了仓颉语言的核心语法知识和实际应用技巧。本书通俗易懂而不失技术深度,案例丰富,实用性强,涵盖了华为开发技术的最新动态和实践案例,同时涵盖了其他同类图书中很少涉及的开发工具与平台介绍。本书适合华为仓颉编程语言的初学者和进阶读者作为自学教程,也可作为培训学校和各大院校的相关专业的教学参考书。

刘陈
----------------------------
山东大学计算机通信硕士、HarmonyOS技术专家,现任浪潮信息资深移动开发架构师,精通Java、C、C++、Python、Objective-C、Swift等编程语言,10年Android、iOS开发经验,5年HarmonyOS开发经验。曾就职于HTC、联想,先后担任过软件开发工程师、项目经理、产品技术主管等职位。

第1章 仓颉语言基础介绍 1

1.1 鸿蒙系统介绍 2

1.1.1 鸿蒙系统的发展历程 2

1.1.2 鸿蒙系统的架构概览 2

1.1.3 分布式架构 3

1.1.4 多设备支持 3

1.2 仓颉语言介绍 4

1.2.1 仓颉语言的背景和发展历程 4

1.2.2 仓颉语言的主要特点 5

1.3 仓颉语言的应用场景 6

1.3.1 操作系统和系统级开发 6

1.3.2 智能设备应用开发 6

1.3.3 物联网与嵌入式系统 7

第2章 搭建仓颉开发环境 8

2.1 系统要求 9

2.2 准备仓颉 SDK 9

2.3 搭建 Visual Studio Code 开发环境 10

2.3.1 安装 Visual Studio Code 10

2.3.2 配置仓颉环境 12

2.3.3 第一个仓颉程序 14

2.4 搭建 DevEco Studio 开发环境 18

2.4.1 DevEco Studio 的特点 19

2.4.2 下载并安装 DevEco Studio 19

2.4.3 配置仓颉环境 22

第3章 基础语法 26

3.1 标识符和关键字 27

3.1.1 标识符 27

3.1.2 关键字 27

3.2 注释 28

3.3 常量和变量 29

3.3.1 常量 29

3.3.2 变量 31

3.3.3 值类型和引用类型变量 33

3.4 操作符 34

3.4.1 算术操作符和赋值操作符 35

3.4.2 比较操作符 36

3.4.3 逻辑操作符 37

3.4.4 位操作符 39

3.4.5 自增和自减操作符 40

3.4.6 操作符的优先级 41

3.5 数据类型 44

3.5.1 整数类型 45

3.5.2 浮点类型 46

3.5.3 布尔类型 47

3.5.4 字符类型 48

3.5.5 字符串类型 50

3.5.6 Unit 类型 54

3.6 类型转换 55

3.6.1 数值类型转换 55

3.6.2 和 Rune 类型相关的转换 57

3.6.3 is 和 as 操作符 58

3.7 输入和输出 59

3.7.1 函数 print 59

3.7.2 函数 println 61

第4章 表达式 63

4.1 条件表达式 64

4.1.1 if 表达式语句 64

4.1.2 if…else if…else 表达式语句 65

4.1.3 if 表达式语句的类型检查 67

4.1.4 if 表达式语句的嵌套 68

4.2 循环结构 69

4.2.1 while 表达式 69

4.2.2 do-while 表达式 72

4.2.3 for-in 表达式 74

4.2.4 遍历区间 76

4.2.5 where 条件 77

4.2.6 while 表达式的嵌套 78

4.2.7 for-in 表达式的嵌套 79

4.3 跳转表达式 80

4.3.1 break 表达式 80

4.3.2 continue 表达式 81

第5章 元组和数组 83

5.1 元组 84

5.1.1 元组的定义 84

5.1.2 元组的操作 85

5.1.3 元组的嵌套 88

5.2一维数组 91

5.2.1 数组的声明与创建 91

5.2.2 使用一维数组 93

5.2.3 数组元素求和 95

5.3 多维数组 96

5.3.1 多维数组的声明与创建 96

5.3.2 初始化二维数组的其他方法 100

5.4 VArray 数组 103

5.4.1 定义与声明 103

5.4.2 VArray 的初始化和操作 103

5.5 内置 Array 操作函数 105

5.5.1 拷贝与克隆 105

5.5.2 连接与合并 106

5.5.3 翻转与切片 107

5.5.4 访问与搜索 108

5.5.5 转换与输出 109

5.5.6 比较 110

5.5.7 数组元素数量 111

第6章 函数 112

6.1 函数基础 113

6.1.1 定义函数 113

6.1.2 参数列表 113

6.1.3 函数返回值类型 115

6.1.4 函数体 118

6.2 调用函数 118

6.2.1 非命名参数的调用 119

6.2.2 命名参数的调用 119

6.2.3 默认参数的函数调用 120

6.3 函数的嵌套调用和递归调用 120

6.3.1 函数的嵌套调用 120

6.3.2 函数的递归调用 121

6.4 Lambda 表达式 125

6.4.1 Lambda 表达式的定义 125

6.4.2 Lambda 表达式的返回类型 125

6.4.3 Lambda 表达式的调用 126

6.5 变量作用域 132

6.5.1 局部变量作用域 133

6.5.2 全局变量作用域 134

6.5.3 函数作用域 134

6.6 闭包 135

6.6.1 变量捕获 135

6.6.2 使用闭包 136

6.6.3 闭包作用域 140

6.7 函数重载 140

6.7.1 函数重载的规则 141

6.7.2 函数重载决议 144

6.8 内置函数 146

6.8.1 随机函数 146

6.8.2 格式化函数 147

6.8.3 数学运算函数 149

第7章 结构 152

7.1 结构体基础 153

7.1.1 定义结构体 153

7.1.2 结构体的成员变量 154

7.1.3 成员函数 157

7.1.4 结构体成员的访问修饰符 160

7.2 结构体实例 161

7.2.1 创建结构体实例 161

7.2.2 不同类型的结构体成员变量 161

7.2.3 修改结构体的成员变量 162

7.2.4 结构体的复制行为 164

7.3mut 函数 166

7.3.1 mut 函数介绍 166

7.3.2 mut 函数的限制 168

第8章 枚举 170

8.1 枚举基础 171

8.1.1 推出枚举的背景 171

8.1.2 定义枚举类型 171

8.1.3 使用枚举 173

8.1.4 match 表达式 175

8.2 模式匹配 180

8.2.1 常量模式 180

8.2.2 通配符模式匹配 181

8.2.3 绑定模式匹配 182

8.2.4 元组模式匹配 183

8.2.5 类型模式匹配 184

8.2.6 枚举模式匹配 186

8.2.7 模式的嵌套与组合匹配 186

8.2.8 模式的可匹配性 189

8.3 可选类型 193

8.3.1 定义 Option 类型 193

8.3.2 if-let 表达式 195

8.3.3 while-let 表达式 197

8.3.4 模式和可选类型的关系 198

第9章 面向对象编程 200

9.1 类 201

9.1.1 类和对象的概念 201

9.1.2 声明类 201

9.1.3 创建对象 203

9.1.4 成员变量 204

9.1.5 构造函数 206

9.1.6 终结器 209

9.1.7 成员函数 210

9.2 访问修饰符 212

9.2.1 访问修饰符介绍 212

9.2.2 使用访问修饰符 213

9.3 类的继承 214

9.3.1 继承的基本概念 215

9.3.2 实现继承 215

9.3.3 super 和 this 216

9.3.4 覆盖(override)和重定义(redef) 218

9.3.5 This 类型 220

9.4 抽象类 221

9.4.1 抽象类的特点 221

9.4.2 定义抽象类 222

9.5 接口 224

9.5.1 定义并实现接口 224

9.5.2 接口的成员 227

9.5.3 接口的继承 229

9.5.4 接口的默认实现 231

9.5.5 Any 类型 232

9.6 属性 234

9.6.1 定义属性 234

9.6.2 属性的修饰符 235

9.6.3 抽象属性 238

9.7 子类型关系 239

第10章 泛型 242

10.1 泛型介绍 243

10.1.1 泛型的常用术语 243

10.1.2 定义泛型 243

10.1.3 泛型约束 246

10.2 泛型函数 246

10.2.1 泛型函数的定义 247

10.2.2 全局泛型函数 248

10.2.3 局部泛型函数 249

10.2.4 泛型成员函数 250

10.2.5 静态泛型函数 252

10.3 泛型类和接口 253

10.3.1 泛型类 253

10.3.2 泛型接口 254

10.4 泛型结构体 255

10.4.1 泛型结构体的定义 255

10.4.2 使用泛型结构体 256

10.5 泛型枚举 259

第11章 扩展 262

11.1 扩展介绍 263

11.1.1 编程语言中的扩展 263

11.1.2 仓颉语言中的扩展 263

11.2 直接扩展 264

11.2.1 实现直接扩展 264

11.2.2 针对泛型类型的扩展 265

11.2.3 泛型约束的扩展 267

11.3 接口扩展 269

11.3.1 实现接口扩展 269

11.3.2 同时实现多个接口 269

11.3.3 接口扩展中的泛型约束 271

11.4 访问规则 272

11.4.1 扩展的修饰符 272

11.4.2 扩展的孤儿规则 275

11.4.3 扩展的访问和遮盖 276

第12章 集合 278

12.1 集合介绍 279

12.1.1 集合的基本概念 279

12.1.2 仓颉语言中的集合 280

12.2 ArrayList 281

12.2.1 ArrayList 介绍 281

12.2.2 添加、遍历、修改和删除 283

12.2.3 排序操作 285

12.2.4 切片操作 287

12.3 HashSet 288

12.3.1 HashSet 介绍 288

12.3.2 添加、遍历、修改和删除 290

12.3.3 排序操作 291

12.3.4 切片操作 293

12.4 HashMap 294

12.4.1 HashMap 介绍 294

12.4.2 添加、遍历、修改和删除 295

12.4.3 切片操作 297

12.5 LinkedList 298

12.5.1 LinkedList 介绍 298

12.5.2 添加、遍历、修改和删除 300

12.6 TreeMap 301

12.6.1 TreeMap 介绍 302

12.6.2 添加、遍历、修改和删除 303

第13章 包 306

13.1 包的基础知识介绍 307

13.1.1 推出包的历史背景 307

13.1.2 包的作用 307

13.2 仓颉语言中的包 308

13.2.1 包的声明 308

13.2.2 顶层声明的可见性 309

13.3 包的导入 313

13.3.1 普通的 import 导入 313

13.3.2 隐式导入 314

13.3.3 导入重命名 314

13.3.4 重导出一个导入的名字 316

第14章 异常处理 318

14.1 初识异常 319

14.1.1 异常的基本概念 319

14.1.2 仓颉语言的异常处理 319

14.1.3 常用的运行时异常 320

14.2 try 表达式 321

14.2.1 普通的 try 表达式 321

14.2.2 try-with-resources 表达式 323

14.2.3 CatchPattern 机制 326

14.3 用 Option 处理异常 328

14.3.1 模式匹配 328

14.3.2 Coalescing 操作符() 329

14.3.3 问号操作符() 331

14.3.4 函数 getOrThrow 331

第15章 并发 334

15.1 并发基础 335

15.1.1 并发的基本概念 335

15.1.2 并发的特性和实现方式 336

15.1.3 仓颉语言的并发 336

15.2 多线程开发 337

15.2.1 线程介绍 337

15.2.2 创建线程 338

15.2.3 访问线程 340

15.2.4 访问线程属性 343

15.2.5 终止线程 344

15.3 线程同步 346

15.3.1 线程同步的意义 346

15.3.2 原子操作 347

15.3.3 可重入互斥锁 349

15.3.4 Monitor 同步 357

15.3.5 MultiConditionMonitor 361

15.3.6 synchronized 锁管理 365

15.3.7 线程局部变量 369

第16章 I/O 流操作 372

16.1 I/O 流介绍 373

16.1.1 I/O 流的操作类型 373

16.1.2 仓颉语言中的 I/O 373

16.2 标准流 375

16.2.1 标准流介绍 375

16.2.2 类 Console 375

16.2.3 ConsoleReader 标准读取 376

16.2.4 ConsoleWriter 标准写入 377

16.3 文件流 379

16.3.1 包 std.fs 介绍 380

16.3.2 File 文件操作 380

16.3.3 Directory 文件夹操作 383

16.3.4 结构体 FileInfo 386

16.3.5 结构体 Path 389

16.4 I/O 处理流 393

16.4.1 包 io 介绍 393

16.4.2 输入流和输出流 394

16.4.3 BufferedInputStream 缓冲区输入流 395

16.4.4 BufferedOutputStream 缓冲区输出流 397

16.4.5 ByteArrayStream 字节流 398

16.4.6 ChainedInputStream 多输入流读取 400

16.4.7 MultiOutputStream 多输出流 401

16.4.8 StringReader 读取输入流 402

16.4.9 StringWriter 写入输入流 404

第17章 网络编程 407

17.1 网络编程基础 408

17.1.1 网络通信协议 408

17.1.2 IP 地址和端口号 409

17.1.3 仓颉语言的网络编程 410

17.2 Socket 编程 410

17.2.1 包 socket 411

17.2.2 TCP 传输处理 412

17.2.3 UDP 传输处理 416

17.3 HTTP 编程 418

17.3.1 包 net.http 418

17.3.2 处理客户端请求 420

17.3.3 Cookie 服务 424

17.3.4 网络服务 427

17.3.5 WebSocket 编程 431

第18章 宏 436

18.1 宏的相关概念 437

18.2 仓颉语言中的宏 437

18.2.1 第一个宏实例 437

18.2.2 Token 类型 439

18.2.3 quote 表达式和插值 441

18.2.4 语法节点 442

18.3 宏的实现 444

18.3.1 非属性宏 444

18.3.2 属性宏 447

18.3.3 宏的调用 448

18.3.4 宏的嵌套 449

18.3.5 宏调用中的嵌套宏调用 450

第19章 综合实战:圆角图片视图库 453

19.1 项目介绍 454

19.1.1 背景介绍 454

19.1.2 项目需求分析 454

19.1.3 项目概述 454

19.2 圆角图片处理框架 455

19.2.1 工具函数 455

19.2.2 目录操作和文件操作 456

19.2.3 创建和管理 PixelMap 对象 458

19.2.4 图片缩放类型 461

19.2.5 配置圆角图片显示属性 463

19.3 HarmonyOS 应用包 465

19.3.1 入口逻辑和组件初始化 465

19.3.2 主界面程序 466

19.3.3 配置文件 467

商品参数
基本信息
出版社 北京大学出版社
ISBN 9787301359914
条码 9787301359914
编者 刘陈 著
译者 --
出版年月 2025-05-01 00:00:00.0
开本 16开
装帧 平装
页数 480
字数 805000
版次 1
印次 1
纸张 一般胶版纸
商品评论

暂无商品评论信息 [发表商品评论]

商品咨询

暂无商品咨询信息 [发表商品咨询]