展开全部

主编推荐语

全场景分布式系统,应用开发实战入门。

内容简介

HarmonyOS是一款面向未来、面向全场景的分布式操作系统,借助HarmonyOS全场景分布式系统和设备生态,定义全新的硬件、交互和服务体验。

本书采用HarmonyOS3版本作为基础,详细介绍如何基于HarmonyOS3来进行应用开发,包括HarmonyOS架构、DevEcoStudio、应用结构、Ability、UI开发、公共事件、窗口管理、网络编程、安全管理、数据管理等多个主题,还介绍如何从0开始开发计算器、视频播放器、购物应用、微信应用等。

本书辅以大量的实战案例,图文并茂,让读者易于理解掌握。同时,案例的选型偏重于解决实际问题,具有很强的前瞻性、应用性和趣味性。加入鸿蒙生态,让我们一起构建万物互联的新时代。

目录

  • 版权信息
  • 作者简介
  • 内容简介
  • 前言
  • 第1章 HarmonyOS介绍
  • 1.1 HarmonyOS概述
  • 1.1.1 什么是HarmonyOS
  • 1.1.2 HarmonyOS应用开发
  • 1.2 HarmonyOS的特征
  • 1.2.1 硬件互助,资源共享
  • 1.2.2 一次开发,多端部署
  • 1.2.3 统一OS,弹性部署
  • 1.3 HarmonyOS 3的新特性
  • 1.3.1 Ability组件的生命周期
  • 1.3.2 ArkUI开发框架
  • 1.3.3 ArkTS编程语言
  • 1.3.4 ExtensionAbility机制
  • 1.4 DevEco Studio的安装
  • 1.4.1 下载DevEco Studio
  • 1.4.2 安装DevEco Studio
  • 1.4.3 配置DevEco Studio
  • 1.5 实战:创建第一个HarmonyOS应用
  • 1.5.1 选择创建新项目
  • 1.5.2 选择模板
  • 1.5.3 配置项目信息
  • 1.5.4 自动生成工程代码
  • 1.5.5 预览项目
  • 1.5.6 运行项目
  • 1.6 应用工程结构介绍
  • 1.6.1 工程级目录
  • 1.6.2 entry模块级目录
  • 1.6.3 配置文件
  • 1.7 总结
  • 1.8 习题
  • 第2章 Ability的开发
  • 2.1 Ability概述
  • 2.1.1 单Ability应用和多Ability应用
  • 2.1.2 HarmonyOS应用模型
  • 2.2 FA模型介绍
  • 2.2.1 FA模型中的Ability
  • 2.2.2 FA模型的生命周期
  • 2.2.3 FA模型的进程线程模型
  • 2.3 Stage模型介绍
  • 2.3.1 Stage模型的设计思想
  • 2.3.2 Stage模型的Ability生命周期
  • 2.3.3 Stage模型的Ability启动模式
  • 2.4 实战:Ability内页面的跳转和数据传递
  • 2.4.1 新建Ability内页面
  • 2.4.2 页面跳转及传参
  • 2.4.3 参数接收
  • 2.4.4 运行
  • 2.5 Want概述
  • 2.5.1 Want的用途
  • 2.5.2 Want的类型
  • 2.5.3 Want参数属性
  • 2.6 实战:显式Want启动Ability
  • 2.6.1 新建Ability内页面
  • 2.6.2 新建Ability
  • 2.6.3 使用显式Want启动Ability
  • 2.6.4 运行
  • 2.7 实战:隐式Want打开应用管理
  • 2.7.1 使用隐式Want启动Ability
  • 2.7.2 运行
  • 2.8 总结
  • 2.9 习题
  • 第3章 UI开发(上)
  • 3.1 ArkUI概述
  • 3.1.1 ArkUI的基本概念
  • 3.1.2 ArkUI的主要特征
  • 3.1.3 JS、TS、ArkTS、ArkUI和ArkCompiler之间的联系
  • 3.2 声明式开发范式
  • 3.2.1 声明式开发范式与类Web开发范式
  • 3.2.2 声明式开发范式的基础能力
  • 3.2.3 声明式开发范式的整体架构
  • 3.2.4 声明式开发范式的基本组成
  • 3.3 常用的组件
  • 3.4 基础组件详解
  • 3.4.1 Blank
  • 3.4.2 Button
  • 3.4.3 Checkbox
  • 3.4.4 CheckboxGroup
  • 3.4.5 DataPanel
  • 3.4.6 DatePicker
  • 3.4.7 Divider
  • 3.4.8 Gauge
  • 3.4.9 Image
  • 3.4.10 ImageAnimator
  • 3.4.11 LoadingProgress
  • 3.4.12 Marquee
  • 3.4.13 Navigation
  • 3.4.14 PatternLock
  • 3.4.15 Progress
  • 3.4.16 QRCode
  • 3.4.17 Radio
  • 3.4.18 Rating
  • 3.4.19 RichText
  • 3.4.20 ScrollBar
  • 3.4.21 Search
  • 3.4.22 Select
  • 3.4.23 Slider
  • 3.4.24 Span
  • 3.4.25 Stepper与StepperItem
  • 3.4.26 Text
  • 3.4.27 TextArea
  • 3.4.28 TextClock
  • 3.4.29 TextInput
  • 3.4.30 TextPicker
  • 3.4.31 TextTimer
  • 3.4.32 TimePicker
  • 3.4.33 Toggle
  • 3.4.34 Web
  • 3.5 总结
  • 3.6 习题
  • 第4章 UI开发(下)
  • 4.1 容器组件详解
  • 4.1.1 Column和Row
  • 4.1.2 ColumnSplit和RowSplit
  • 4.1.3 Flex
  • 4.1.4 Grid和GridItem
  • 4.1.5 GridRow和GridCol
  • 4.1.6 List、ListItem和ListItemGroup
  • 4.1.7 AlphabetIndexer
  • 4.1.8 Badge
  • 4.1.9 Counter
  • 4.1.10 Navigator
  • 4.1.11 Panel
  • 4.1.12 Refresh
  • 4.1.13 RelativeContainer
  • 4.1.14 Scroll
  • 4.1.15 SideBarContainer
  • 4.1.16 Stack
  • 4.1.17 Swiper
  • 4.1.18 Tabs和TabContent
  • 4.2 媒体组件详解
  • 4.3 绘制组件详解
  • 4.3.1 Circle和Ellipse
  • 4.3.2 Line
  • 4.3.3 Polyline
  • 4.3.4 Polygon
  • 4.3.5 Path
  • 4.3.6 Rect
  • 4.3.7 Shape
  • 4.4 画布组件详解
  • 4.5 常用布局
  • 4.5.1 自适应布局
  • 4.5.2 响应式布局
  • 4.6 实战:使用ArkUI实现“登录”页面
  • 4.6.1 使用Column容器实现整体布局
  • 4.6.2 使用Image组件实现标志展示
  • 4.6.3 使用TextInput组件实现账号和密码的输入
  • 4.6.4 使用Button组件实现“登录”按钮
  • 4.6.5 使用Text组件实现“注册”按钮
  • 4.6.6 完整代码
  • 4.7 实战:使用ArkUI实现“计算器”
  • 4.7.1 新增Calculator.ets的文件
  • 4.7.2 实现递归运算
  • 4.7.3 实现将输入的字符串转为字符串数组
  • 4.7.4 新增CalculatorButtonInfo.ets文件
  • 4.7.5 实现CalculatorButton组件
  • 4.7.6 构造整体页面
  • 4.7.7 运行
  • 4.8 总结
  • 4.9 习题
  • 第5章 公共事件
  • 5.1 公共事件概述
  • 5.1.1 公共事件的分类
  • 5.1.2 公共事件的开发
  • 5.2 实战:订阅、发布、取消公共事件
  • 5.2.1 添加按钮
  • 5.2.2 添加Text显示接收的事件
  • 5.2.3 设置按钮的单击事件方法
  • 5.2.4 运行
  • 5.3 总结
  • 5.4 习题
  • 第6章 窗口管理
  • 6.1 窗口开发概述
  • 6.1.1 应用窗口的分类
  • 6.1.2 窗口模块的用途
  • 6.1.3 窗口沉浸式能力
  • 6.2 窗口管理
  • 6.2.1 设置应用主窗口的属性及目标页面
  • 6.2.2 设置应用子窗口的属性及目标页面
  • 6.2.3 体验窗口沉浸式能力
  • 6.3 实战:实现窗口沉浸式效果
  • 6.3.1 修改onWindowStageCreate方法
  • 6.3.2 运行
  • 6.4 总结
  • 6.5 习题
  • 第7章 网络编程
  • 7.1 HTTP数据请求概述
  • 7.1.1 HTTP请求方法
  • 7.1.2 HTTP状态码
  • 7.2 实战:通过HTTP请求数据
  • 7.2.1 准备一个HTTP服务接口
  • 7.2.2 添加使用Button组件来触发单击
  • 7.2.3 发起HTTP请求
  • 7.2.4 运行
  • 7.3 Web组件概述
  • 7.3.1 加载本地网页
  • 7.3.2 加载在线网页
  • 7.3.3 网页缩放
  • 7.3.4 文本缩放
  • 7.3.5 Web组件事件
  • 7.3.6 Web和JavaScript交互
  • 7.3.7 处理页面导航
  • 7.4 实战:Web组件加载在线网页
  • 7.4.1 准备一个在线网页地址
  • 7.4.2 声明网络访问权限
  • 7.4.3 发起HTTP请求
  • 7.4.4 运行
  • 7.5 总结
  • 7.6 习题
  • 第8章 安全管理
  • 8.1 访问控制概述
  • 8.1.1 权限包含的基本概念
  • 8.1.2 权限等级说明
  • 8.1.3 权限类型
  • 8.1.4 权限列表
  • 8.2 访问控制开发步骤
  • 8.2.1 权限申请
  • 8.2.2 权限授权
  • 8.3 实战:访问控制授权
  • 8.3.1 场景介绍
  • 8.3.2 声明访问的权限
  • 8.3.3 申请授权user_grant权限
  • 8.3.4 运行
  • 8.4 总结
  • 8.5 习题
  • 第9章 数据管理
  • 9.1 分布式数据服务概述
  • 9.1.1 分布式数据服务的基本概念
  • 9.1.2 分布式数据服务的运作机制
  • 9.1.3 分布式数据服务的约束与限制
  • 9.2 分布式数据服务的开发步骤
  • 9.2.1 导入模块
  • 9.2.2 构造分布式数据库管理类实例
  • 9.2.3 获取/创建分布式数据库
  • 9.2.4 订阅分布式数据库的数据变化
  • 9.2.5 将数据写入分布式数据库
  • 9.2.6 查询分布式数据库数据
  • 9.3 关系数据库概述
  • 9.3.1 基本概念
  • 9.3.2 运作机制
  • 9.3.3 默认配置与限制
  • 9.4 实战:关系数据库的开发
  • 9.4.1 操作RdbStore
  • 9.4.2 账目信息的表示
  • 9.4.3 操作账目信息表
  • 9.4.4 设计界面
  • 9.4.5 运行
  • 9.5 首选项概述
  • 9.5.1 首选项的运作机制
  • 9.5.2 约束与限制
  • 9.6 实战:首选项开发
  • 9.6.1 操作Preferences
  • 9.6.2 账目信息的表示
  • 9.6.3 设计界面
  • 9.6.4 运行
  • 9.7 总结
  • 9.8 习题
  • 第10章 多媒体开发
  • 10.1 音频开发
  • 10.1.1 音频开发的基本概念
  • 10.1.2 音频播放开发指导
  • 10.1.3 如何选择音频播放开发方式
  • 10.1.4 AVPlayer API的开发步骤
  • 10.2 图片开发
  • 10.2.1 图片开发的基本概念
  • 10.2.2 图片开发的主要流程
  • 10.2.3 图片解码
  • 10.2.4 图像变换
  • 10.2.5 位图操作
  • 10.2.6 图片编码
  • 10.2.7 图片工具
  • 10.3 视频开发
  • 10.3.1 视频开发指导
  • 10.3.2 视频开发步骤
  • 10.4 实战:实现视频播放器
  • 10.4.1 获取本地视频
  • 10.4.2 视频播放控制
  • 10.4.3 创建播放器界面
  • 10.4.4 运行
  • 10.5 总结
  • 10.6 习题
  • 第11章 综合实战:购物应用
  • 11.1 购物应用概述
  • 11.1.1 购物应用的功能
  • 11.1.2 购物应用效果展示
  • 11.2 实战:实现商品列表页签
  • 11.2.1 创建一个页面
  • 11.2.2 创建模型
  • 11.2.3 创建组件
  • 11.2.4 加载主界面
  • 11.3 实战:实现购物车页签
  • 11.3.1 创建一个页面
  • 11.3.2 创建组件
  • 11.4 实战:实现我的页签
  • 11.4.1 创建一个页面
  • 11.4.2 创建组件
  • 11.5 实战:商品详情页面
  • 11.5.1 创建一个页面
  • 11.5.2 创建组件
  • 11.6 总结
  • 11.7 习题
  • 第12章 综合实战:仿微信应用
  • 12.1 仿微信应用概述
  • 12.1.1 “微信”页面
  • 12.1.2 “联系人”页面
  • 12.1.3 “发现”页面
  • 12.1.4 “我”页面
  • 12.2 实战:“微信”页面
  • 12.2.1 创建“微信”页面ChatPage
  • 12.2.2 定义联系人Person
  • 12.2.3 定义联系人数据
  • 12.2.4 定义样式
  • 12.3 实战:“联系人”页面
  • 12.3.1 创建“联系人”页面ContactPage
  • 12.3.2 定义样式
  • 12.4 实战:“发现”页面
  • 12.4.1 创建“发现”页面DiscoveryPage
  • 12.4.2 定义样式
  • 12.5 实战:“我”页面
  • 12.6 实战:组装所有页面
  • 12.6.1 Tabs组件作为导航栏
  • 12.6.2 Swiper组件实现页面滑动
  • 12.7 总结
  • 12.8 习题
  • 参考文献
展开全部

评分及书评

评分不足
1个评分

出版方

清华大学出版社

清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。