首页 > 图书中心 > 鸿蒙HarmonyOS NEXT开发之路 卷1:ArkTS语言篇

目录

目    录

第一部分  基础知识

第1章  ArkTS声明式UI开发规范 3

1.1  HarmonyOS NEXT的介绍与特点 3

1.1.1  HarmonyOS NEXT概览 3

1.1.2  核心亮点 3

1.1.3  深远影响 4

1.1.4  开发者机遇 4

1.2  整体架构 5

1.3  开发流程 7

1.4  通用规则 7

1.5  开发环境搭建 7

1.5.1  概述 8

1.5.2  工具准备 8

1.5.3  安装DevEco Studio 8

1.5.4  诊断开发环境 11

1.5.5  启用中文化插件 11

1.6  编写HarmonyOS入门程序 12

1.6.1  案例说明 12

1.6.2  创建ArkTS工程 13

1.6.3  ArkTS工程目录结构(Stage模型) 14

1.6.4  构建第一个页面 16

1.6.5  构建第二个页面 18

1.6.6  实现页面间的跳转 21

1.7  本章小结 24

1.8  本章习题 25

第2章  ArkTS基本知识 26

2.1  初识ArkTS 26

2.2  DevEco Studio的使用 27

2.2.1  新建工程 28

2.2.2  自动化测试框架 29

2.2.3  环境准备 30

2.2.4  新建和编写测试脚本 30

2.2.5  DevEco Studio执行测试脚本 32

2.2.6  查看测试结果 35

2.3  ArkTS的基本语法规则 36

2.3.1  声明 36

2.3.2  自动类型推断 36

2.3.3  类型 37

2.3.4  运算符 42

2.3.5  语句 44

2.4  本章小结 52

2.5  本章习题 53

第3章  函数 54

3.1  函数声明 54

3.2  可选参数 55

3.3  rest参数 56

3.4  返回类型 56

3.5  函数的作用域 57

3.6  函数的调用 58

3.7  函数类型 58

3.8  箭头函数或Lambda函数 59

3.9  闭包 59

3.10  函数重载 60

3.11  本章小结 61

3.12  本章习题 61

第4章  类和对象 62

4.1  字段 63

4.1.1  实例字段 63

4.1.2  静态字段 63

4.1.3  字段初始化 64

4.1.4  getter和setter 65

4.2  方法 66

4.2.1  实例方法 66

4.2.2  静态方法 67

4.3  类的继承 67

4.3.1  继承 67

4.3.2  父类访问 68

4.3.3  方法重写 69

4.3.4  重载签名的方法 70

4.4  构造函数 70

4.4.1  基本构造函数 70

4.4.2  子类的构造函数 71

4.4.3  重载签名的构造函数 71

4.5  可见性修饰符 72

4.5.1  public 72

4.5.2  private 72

4.5.3  protected 73

4.6  对象变量 73

4.7  其他 75

4.8  本章小结 76

4.9  本章习题 76

第5章  接口 78

5.1  接口初探 79

5.2  可选属性 80

5.3  只读属性 81

5.4  实现接口 83

5.5  继承接口 85

5.6  类型系统 87

5.7  本章小结 87

5.8  本章习题 88

第6章  泛型类型 89

6.1  泛型类和接口 89

6.2  泛型约束 90

6.3  泛型函数 91

6.4  泛型默认值 92

6.5  本章小结 92

6.6  本章习题 93

第7章  空安全 94

7.1  非空断言运算符 94

7.2  空值合并运算符 95

7.3  可选链 95

7.4  本章小结 96

7.5  本章习题 97

第8章  模块 98

8.1  模块化介绍 98

8.2  ArkTS的模块化 98

8.2.1  ArkTS支持的模块化标准 99

8.2.2  ArkTS支持加载的模块类型 100

8.2.3  模块化运行加载流程 100

8.3  导出 101

8.4  导入 102

8.4.1  静态导入 102

8.4.2  动态导入 103

8.4.3  导入HarmonyOS SDK的开放能力 104

8.5  顶层语句 104

8.6  本章小结 105

8.7  本章习题 106

第二部分  ArkTS进阶

第9章  ArkTS高性能最佳实践 109

9.1  声明与表达式的使用 109

9.2  函数的性能提升 111

9.3  数组的性能提升 112

9.4  异常的处理 114

9.5  本章小结 115

9.6  本章习题 115

第10章  声明式UI描述 116

10.1  创建组件 116

10.1.1  无参数创建组件 117

10.1.2  有参数创建组件 117

10.2  配置属性 118

10.3  配置事件 118

10.4  配置子组件 120

10.5  本章小结 120

10.6  本章习题 121

第11章  自定义组件 122

11.1  创建自定义组件 122

11.1.1  自定义组件的基本用法 122

11.1.2  自定义组件的基本结构 124

11.1.3  成员函数/变量 125

11.1.4  自定义组件的参数规定 126

11.1.5  build()函数 127

11.1.6  自定义组件通用样式 131

11.2  页面和自定义组件生命周期 131

11.2.1  自定义组件的创建和渲染流程 132

11.2.2  自定义组件重新渲染 133

11.2.3  自定义组件的删除 133

11.2.4  自定义组件监听页面生命周期 136

11.3  自定义组件的自定义布局 138

11.4  自定义组件成员属性访问限定符的使用限制 139

11.4.1  使用限制 140

11.4.2  错误使用场景示例 140

11.5  本章小结 144

11.6  本章习题 145

第12章  装饰器 146

12.1  @Builder装饰器 146

12.1.1  自定义构建函数 146

12.1.2  参数传递 147

12.2  @BuilderParam装饰器 150

12.2.1  装饰器使用说明 151

12.2.2  使用场景 153

12.3  wrapBuilder 156

12.3.1  接口说明 157

12.3.2  使用场景 157

12.4  @Style装饰器 159

12.4.1  装饰器使用说明 160

12.4.2  使用场景 161

12.5  @Extend装饰器 162

12.5.1  装饰器使用说明 162

12.5.2  使用场景 164

12.6  stateStyle 166

12.6.1  概述 166

12.6.2  使用场景 166

12.7  @AnimatableExtend装饰器 171

12.7.1  装饰器使用说明 171

12.7.2  使用场景 172

12.8  @Require装饰器 175

12.8.1  装饰器使用说明 176

12.8.2  使用场景 176

12.9  本章小结 177

12.10  本章习题 178

第三部分  ArkTS高级特性

第13章  状态管理 181

13.1  状态管理概述 181

13.1.1  基本概念 181

13.1.2  状态管理 182

13.2  @State装饰器:组件内状态 184

13.2.1  概述 184

13.2.2  装饰器使用规则说明 185

13.2.3  变量的传递/访问规则说明 185

13.2.4  观察变化和行为表现 186

13.3  @Prop装饰器:父子间同步 190

13.3.1  概述 190

13.3.2  装饰器使用规则说明 190

13.3.3  变量的传递和访问规则说明 191

13.3.4  观察变化和行为表现 192

13.4  @Link装饰器:父子组件双向同步 196

13.4.1  概述 196

13.4.2  装饰器使用规则说明 196

13.4.3  变量的传递和访问规则说明 196

13.4.4  观察变化和行为表现 197

13.5  @Provide装饰器和@Consume装饰器:与后代组件双向同步 200

13.5.1  概述 200

13.5.2  装饰器使用规则说明 201

13.5.3  变量的传递和访问规则说明 202

13.5.4  观察变化和行为表现 203

13.6  @Observed装饰器和@ObjectLink装饰器:嵌套类对象的属性变化 205

13.6.1  概述 205

13.6.2  装饰器使用规则说明 206

13.6.3  变量的传递和访问规则说明 207

13.6.4  观察变化和行为表现 207

13.7  LocalStorage:页面级UI状态存储 210

13.7.1  概述 211

13.7.2  @LocalStorageProp装饰器 211

13.7.3  @LocalStorageLink装饰器 214

13.8  AppStorage:应用全局的UI状态存储 216

13.8.1  概述 216

13.8.2  @StorageProp装饰器 216

13.8.3  @StorageLink装饰器 219

13.9  PersistentStorage:持久化存储UI状态 220

13.9.1  概述 221

13.9.2  限制条件 221

13.10  Environment:设备环境查询 222

13.10.1  概述 222

13.10.2  Environment内置参数 222

13.11  其他状态管理 224

13.11.1  @Watch装饰器:状态变量更改通知 225

13.11.2  $$运算符:内置组件双向同步 226

13.11.3  @Track装饰器:class对象属性级更新 228

13.12  MVVM模式 231

13.12.1  概述 231

13.12.2  ViewModel的数据源 233

13.12.3  ViewModel的嵌套场景 244

13.12.4  MVVM应用示例 249

13.13  本章小结 262

13.14  本章习题 263

第14章  渲染控制 264

14.1  if/else条件渲染 264

14.1.1  使用规则 264

14.1.2  更新机制 265

14.1.3  使用场景 265

14.2  ForEach循环渲染 270

14.2.1  接口描述 270

14.2.2  键值生成规则 271

14.2.3  组件创建规则 272

14.2.4  使用场景 275

14.2.5  使用建议 282

14.3  LazyForEach数据懒加载 283

14.3.1  接口描述 283

14.3.2  IDataSource类型说明 284

14.3.3  DataChangeListener类型说明 284

14.3.4  DataOperation类型说明 285

14.3.5  使用限制 287

14.3.6  键值生成规则 288

14.3.7  组件创建规则 288

14.4  Repeat循环渲染 308

14.4.1  接口描述 308

14.4.2  键值生成规则 309

14.4.3  组件创建规则 310

14.5  本章小结 316

14.6  本章习题 317

第15章  从TypeScript到ArkTS的适配 318

15.1  程序稳定性 318

15.2  程序性能 321

15.3  .ets代码兼容性 322

15.4  兼容TypeScript/JavaScript的约束 323

15.5  本章小结 326

15.6  本章习题 326

版权所有(C)2023 清华大学出版社有限公司 京ICP备10035462号 京公网安备11010802042911号

联系我们 | 网站地图 | 法律声明 | 友情链接 | 盗版举报 | 人才招聘