期末考试复习总结-第一章《HarmonyOS介绍》
一、知识点总结
1. HarmonyOS核心概念
- 定义:新一代智能终端操作系统,支持多设备智能化、互联与协同,提供统一开发语言和全场景交互体验。
- 应用形态:
- App:传统安装型应用,支持全量API,需手动下载更新。
- 元服务:轻量化服务,免安装、即用即走,仅支持“元服务API集”。
- 核心技术理念:
- 一次开发,多端部署:支持多设备工程管理、自适应布局、分布式调试。
- 可分可合,自由流转:元服务可独立开发、组合为应用,支持跨端迁移和多端协同。
- 统一生态,原生智能:兼容React Native、Flutter等框架,内置AI能力(如OCR、语音识别)。
2. 开发工具与环境
- DevEco Studio:
- 一站式开发环境,支持工程管理、代码编辑、模拟器运行、上架分发等功能。
- 安装要求:Windows 10/11 64位系统,内存≥16GB,硬盘≥100GB。
- ArkUI框架:
- 声明式UI开发范式,支持组件化、状态驱动UI更新。
- 核心组件:
Text
、Button
、Row
、Column
等,通过链式调用设置属性(如.fontSize()
、.backgroundColor()
)。
3. ArkTS基础语法
- 装饰器:
@Component
:标记自定义组件。@Entry
:标记入口组件,每个页面最多一个。@State
:声明状态变量,变化时触发UI刷新。
- UI描述:在
build()
函数中以声明式方式描述组件结构。 - 事件处理:通过
.onClick()
等方法绑定交互逻辑。
4. 应用开发流程
- 环境搭建:下载安装DevEco Studio,配置HarmonyOS SDK。
- 页面开发:
- 创建ArkTS工程,使用
Empty Ability
模板。 - 通过
router.pushUrl()
和router.back()
实现页面跳转。
- 创建ArkTS工程,使用
- 数据管理:
- 网络数据:使用HTTP/RPC访问网络,订阅网络状态。
- 本地数据:用户首选项(Preferences)、关系型数据库。
5. 高级功能
- 动画与转场:使用系统动画API实现页面间平滑过渡。
- Web组件:通过
WebView
集成网络应用,如抽奖案例。 - 通知提醒:添加进度条通知、系统级提醒。
二、思维导图
三、模拟考试题
1. 单选题(10题×3分=30分)
-
HarmonyOS应用的两种形态是( )
A. App和小程序
B. App和元服务
C. 原生应用和Web应用
D. 轻应用和快应用
答案:B -
元服务的核心特点是( )
A. 需安装、轻量化
B. 免安装、即用即走
C. 支持全量API
D. 依赖应用市场更新
答案:B -
DevEco Studio推荐的内存配置是( )
A. 8GB
B. 16GB及以上
C. 32GB
D. 无要求
答案:B -
ArkTS中用于标记入口组件的装饰器是( )
A. @Component
B. @Entry
C. @State
D. @Builder
答案:B -
页面间跳转使用的API是( )
A.router.pushUrl()
B.page.navigate()
C.component跳转()
D.window.open()
答案:A -
声明式UI框架的名称是( )
A. ArkUI
B. Flutter
C. React UI
D. Vue UI
答案:A -
以下属于HarmonyOS核心技术理念的是( )
A. 单一设备优先
B. 可分可合,自由流转
C. 闭源生态
D. 仅支持手机开发
答案:B -
存储用户偏好数据应使用( )
A. 关系型数据库
B. 文件存储
C. 用户首选项(Preferences)
D. 云存储
答案:C -
自定义组件的根节点必须是( )
A. 文本组件
B. 按钮组件
C. 容器组件(如Row/Column)
D. 图片组件
答案:C -
鸿蒙官方学习网站是( )
A. https://developer.huawei.com
B. https://harmonyos.com
C. https://deveco.studio
D. https://appgallery.com
答案:A
2. 判断题(10题×1分=10分)
-
HarmonyOS仅支持手机和平板开发。( )
答案:×(支持多设备如IoT设备) -
元服务和App的生命周期完全独立。( )
答案:√ -
DevEco Studio内置HarmonyOS SDK,无需额外下载。( )
答案:√ -
ArkTS中@State修饰的变量变化会触发UI刷新。( )
答案:√ -
自定义组件可以直接修改状态变量在
build()
函数中。( )
答案:×(需通过事件方法修改) -
页面跳转必须配置路由(
main_pages.json
)。( )
答案:√ -
HarmonyOS不支持跨平台开发框架(如Flutter)。( )
答案:×(支持兼容)
3. 简答题(4题×5分=20分)
-
简述HarmonyOS的核心技术理念。
参考答案:- 一次开发,多端部署:支持多设备适配和分布式调试;
- 可分可合,自由流转:元服务可独立开发并组合为应用;
- 统一生态,原生智能:兼容主流框架,内置AI能力(如OCR、语音识别)。
-
元服务与App的主要区别是什么?
参考答案:- 安装方式:元服务免安装,App需手动安装;
- API范围:元服务仅支持“元服务API集”,App支持全量API;
- 轻量化:元服务包大小有限制,App无限制。
-
简述ArkUI框架的声明式UI特点。
参考答案:- 通过
build()
函数声明式描述UI结构,无需手动操作DOM; - 状态变量(@State)驱动UI自动刷新;
- 支持组件化开发,可复用系统组件和自定义组件。
- 通过
-
列举DevEco Studio的主要功能。
参考答案:- 工程管理、代码编辑、模拟器运行、分布式调试、上架审核、性能调优等。
4. 程序填空题(2题×10分=20分)
题目1:补全代码实现按钮点击修改文本内容。
@Entry
@Component
struct Index {@State text: string = "Hello";build() {Column() {Text(this.text).fontSize(30)Button("点击修改").onClick(() => {// 补全代码:修改text为"World"______;})}}
}
答案:this.text = "World"
题目2:补全页面跳转逻辑。
// 从Index页跳转到Second页
Button("跳转").onClick(() => {router.pushUrl({url: "______" // 补全路由});});
答案:pages/Second
5. 编程题(2题×10分=20分)
题目1:使用ArkTS创建一个包含文本和按钮的页面,点击按钮后文本颜色变为红色。
参考代码:
@Entry
@Component
struct ColorChange {@State color: Color = Color.Black;build() {Column() {Text("点击按钮改变颜色").fontSize(24).fontColor(this.color)Button("变红").onClick(() => {this.color = Color.Red;}).width("80%").height(40)}}
}
题目2:使用循环渲染实现一个待办事项列表(Todo List)。
参考代码:
@Entry
@Component
struct TodoList {@State todos: string[] = ["任务1", "任务2", "任务3"];build() {Column() {ForEach(this.todos, (todo) => {Text(todo).fontSize(20).margin({ top: 5 })}, todo => todo) // 唯一标识}}
}
复习建议
- 客观题:熟记HarmonyOS基础概念(如元服务/App区别)、开发工具配置要求。
- 简答题:重点理解“一次开发多端部署”“可分可合”等核心理论,结合PPT案例记忆。
- 编程题:多练习ArkTS组件使用、状态管理和页面跳转,参考PPT中的待办列表、页面跳转案例。
- 工具操作:熟练掌握DevEco Studio的安装、工程创建、模拟器运行流程,避免环境配置类错误。