基础认证题库请移步:HarmonyOS应用开发者基础认证题库
注:有读者反馈,题库的代码块比较多,打开文章时会卡死。所以笔者将题库拆分,单选题20个为一组,多选题10个为一组,题库目录如下,读者可以按需跳转。如果对您的阅读产生不便,笔者在这里向大家说声抱歉,请各位读者原谅。完整的md文档,等读者把题库整理完,会将网盘链接发出。
序号目录:
- 单选题
HarmonyOS应用开发者高级认证,Next版本发布后最新题库 - 单选题序号1
HarmonyOS应用开发者高级认证,Next版本发布后最新题库 - 单选题序号2
HarmonyOS应用开发者高级认证,Next版本发布后最新题库 - 单选题序号3 - 多选题
HarmonyOS应用开发者高级认证,Next版本发布后最新题库 - 多选题序号1
HarmonyOS应用开发者高级认证,Next版本发布后最新题库 - 多选题序号2
注:题目是乱序,每次考试,选项的顺序都不同
多选题题库 - 序号1
1、在开发过程中,我们可以将每个功能模块作为一个独立的Module进行开发。关于Module,下列选项说法正确的是?
A、feature类型的Module:应用的动态特性模块,编译后生成feature类型的HAP。一个应用中可以包含一个或多个feature类型的HAP,也可以不包含。
B、Shared Library:动态共享库。HSP中的代码和资源可以独立编译,运行时在一个进程中代码也只会存在一份。
C、Static Library:静态共享库。HAR中的代码和资源跟随使用方编译,如果有多个使用方,它们的编译产物中会存在多份相同拷贝。
D、entry类型的Module:应用的主模块,包含应用的入口界面、入口图标和主功能特性,编译后生成entry类型的HAP。每一个应用分发到同一类型的设备上的应用程序包,可以包含一个或多个entry类型的HAP。
应用程序包概述-应用程序包基础知识-开发基础知识-基础入门 | 华为开发者联盟 (huawei.com)
2、某业务团队发现用户对他们App的某个特性使用率并不高,为了节省用户首次下载安装包的体积,考虑将该特性做成按需加载,那么推荐该特性使用的工程模块类型是?
A、hap
B、app
C、hsp
D、har
3、哪些是持续部署最佳实践?
A、监控和回滚机制:实时监控部署后的应用状态,如有问题及时回滚。
B、自动化部署流程:从代码提交到部署的整个流程应尽可能自动化。
C、手工部署:持续部署可以采用手工部署的方式发布软件:
1、有一份非常详尽的文档,该文档描述了执行步骤及每个步骤中易出错的地方;
2、以手工测试来确认该应用程序是否运行正确;
3、在发布时,常常会修正一些在发布过程中发现的问题。
D、灰度发布:先在小部分用户或区域进行部署,观察没问题后再全面推广。
E、开发完成之后再向类生产环境部署:当软件被第一次部署到类生产环境(比如试运行环境)时,就是大部分开发工作完成时,至少是开发团队认为"该软件开发完成了"。
F、手工配置管理:
1、直接修改生产环境上的配置来改变系统配置;
2、集群中各节点的行为有所不同;
3、靠人手工恢复环境。手动记载配置包括操作系统、应用服务器、关系型数据库管理系统、Web服务器或其他基础设施设置。
G、环境一致性:保持开发、测试、生产等环境的高度一致性。**
4、以下代码片段哪几处违反了ArkTS语法规范。
typescript
class Point {
public x: number
public y: number
constructor(x: number, y: number) {
this.x = x
this.y = y
}
}
let p = new Point(1.0, 1.0);
delete p.x;
p.z = 2.0;
p.x = 'Hello!';
A、let p = new Point(1.0, 1.0);
B、delete p.x;
C、p.z = 2.0;
D、p.x = 'Hello!';
5、以下napi代码有问题的是(不确定,把所有选项列出)
typescript
typescript
typescript
typescript
A、A
B、B
C、C
D、D
6、下面关于混淆的描述正确的是
A、代码混淆已经被集成了到SDK中,可以在DevEco Studio中方便地使用。
B、针对工程源码的混淆可以降低工程被破解攻击的风险,缩短函数名、类名和属性名,减小应用的大小。
C、API10及以上版本的Stage模型、编译模式为release时,默认开启代码混淆功能;默认的混淆功能仅会混淆函数参数和局部变量的名称。
D、混淆支持ArkTS/TS/JS文件的混淆
代码混淆-ArkTS(方舟编程语言)-应用框架 | 华为开发者联盟 (huawei.com)
代码混淆-加固构建-编译构建-DevEco Studio | 华为开发者联盟 (huawei.com)
7、下面关于方舟字节码指令含义说明正确的是(不确定,把所有选项列出)
A、假设寄存器v0存放了对象A,累加器(acc)存放了对象B,那么执行指令"Ida v0"后,v0存放对象A,acc存放对象A
B、 假设寄存器v0存放了对象A,累加器(acc)存放了对象B,那么执行指令"Ida v0"后,v0存放对象B,acc存放对象B
C、假设寄存器v0存放了对象A,寄存器v1存放了对象B,那么执行指令"mov v0,v1"后,v0存放对象A,v1存放对象A
D、假设寄存器v0存放了对象A,寄存器v1存放了对象B,那么执行指令"mov v0,v1"后,v0存放对象B,v1存放对象B
8、下面关于ArkTS中import用法,正确的是
A、import { export1 as alias1 } from "ets file name";
B、import defaultExport from "ets file name"
C、import * as name from "ets file name"
D、import { export1 } from "ets file name";
9、以下关于ArkTS线程实例间传输实现方式描述正确的是(不确定,把所有选项列出)
typescript
import { taskpool, worker } from '@kit.ArkTS';
@Sendable
class A {}
let a: A = new A();
@Concurrent
function foo(a: A) {}
let task: taskpool.Task = new taskpool.Task(foo, a)
let w = new worker.ThreadWorker("entry/ets/workers/Worker.ets")
taskpool.execute(task).then(() => {});
w.postMessageWithSharedSendable(a);
task.setCloneList([a]);
taskpool.execute(task).then(() => {});
w.postMessage(a);
A、task.setCloneList([a]); taskpool.execute(task).then() => {});,TaskPool 共享传输实现方式
B、taskpool.execute(task).then(() => {});,TaskPool 共享传输实现方式
C、w.postMessage(a);,Worker 共享传输实现方式
D、w.postMessageWithSharedSendable(a);,Worker 共享传输实现方式
10、以下代码片段哪几个函数违反了ArkTS语法规范。
typescript
function foo1(value1?: number, value2: number) {
if(value1 == undefined){
return value2;
}
return value1 + value2;
}
function foo2(value1: number, value2?: number) {
if (value2 == undefined) {
return value1;
}
return value1 + value2;
}
function foo3(value: number, ...arrary: number[]) {
return value;
}
function foo4( ...arrary: number[], value: number) {
return value;
}
A、foo1
B、foo2
C、foo3
D、foo4