HarmonyOS 鸿蒙面试第一弹

简介: HarmonyOS 鸿蒙面试第一弹

鸿蒙面试第一弹
答案持续更新中

1、自我介绍
2、鸿蒙项目介绍
3、你接触鸿蒙多久了
4、项目给你,鸿蒙项目给你能独立完成吗?
5、装饰器有哪些

  • @Component:用于定义可重用的UI组件。
  • @Entry:用于标识页面的入口组件。
  • @Reusable:实现组件复用,可以优化加载性能并减少应用卡顿。
  • @Preview:用于预览器预览,与@Entry和@Component配合使用可在预览器上进行视图展示。
  • @Observed(或@Observerd):与@ObjectLink装饰器联动,用于观察深层次的嵌套数据变化。
  • @Require:用于校验构造传参。
  • @BuilderParam 和 @Builder:自定义组件时,可只复用组件的逻辑,外部UI使用@BuilderParam传入。
  • @State:用于标记状态信息,表示该属性会随时间推移而发生变化,并与组件的UI渲染相关联。
  • @Prop:用于在子组件中定义那些需要从父组件接收的属性,建立单向同步关系。
  • @Link:与其父组件中的数据源共享相同的值,实现双向数据同步。
  • @Provide 和 @Consume:用于祖先与后代组件的双向数据同步,实现跨层级传递。
  • @StorageProp 和 @StorageLink:应用级别的UI状态存储装饰器。
  • @LocalStorageLink 和 @LocalStorageProp:页面级的UI状态存储装饰器。
  • @Watch:用于监听状态变量的变化,当状态变量变化时,触发相应的回调函数。
  • @Styles:用于定义并复用自定义样式,将多条样式设置提炼成一个方法。
  • @Extend:在@Styles的基础上,用于扩展原生组件样式。
  • @Concurrent:在使用TaskPool时,执行的并发函数需要使用该装饰器修饰。
  • @Track:class对象的属性装饰器,当一个class对象是状态变量时,@Track装饰的属性发生变化,只会触发该属性关联的UI更新。
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    6、UIAbility、Page、Component生命周期 onCreate场景
    UIAbility生命周期
    • Create:在应用加载过程中,UIAbility实例创建完成时触发。系统会调用onCreate()回调,在这个阶段,开发者可以进行页面初始化操作,例如变量定义、资源加载等。
    • Foreground:UIAbility实例切换到前台时触发。对应的是onForeground()回调,在UI可见之前触发,开发者可以在这个回调中申请系统需要的资源。
    • Background:UIAbility切换到后台时触发。也就是UIAbility的UI完全不可见之后,可以在onBackground()回调中释放资源或执行一些比较耗时的操作,如状态保存、停止定位功能等,以节省系统资源消耗。
    • Destroy:在UIAbility实例销毁时触发。对应的回调是onDestroy(),开发者可以在这个回调中进行系统资源释放、数据保存等操作。
      1
      2
      3
      4
    • Page生命周期(被@Entry装饰的组件)
      1
    • onPageShow:页面每次显示时触发一次,包括路由过程、应用进入前台等场景。这是进行页面数据加载、动画启动等操作的理想时机。
    • onPageHide:页面每次隐藏时触发一次,包括路由过程、应用进入后台等场景。此时页面仍然保留在内存中,但不再对用户可见。开发者可以在此函数中暂停一些不必要的后台操作,以节省系统资源。
    • onBackPress:当用户点击返回按钮或执行其他返回操作时触发。开发者可以在此函数中执行一些清理工作,如保存用户输入、确认用户是否真的要离开页面等。
      1
      2
      3
    • Component生命周期(被@Component装饰的自定义组件)
      1
    • aboutToAppear:组件即将出现时回调该接口。具体时机为在创建自定义组件的新实例后,在执行其build()函数之前执行。允许在aboutToAppear函数中改变状态变量,更改将在后续执行build()函数中生效。
    • onDidBuild:组件build()函数执行完成之后回调该接口。但不建议在onDidBuild函数中更改状态变量、使用animateTo等功能,这可能会导致不稳定的UI表现。
    • aboutToDisappear:在自定义组件析构销毁之前执行。不允许在aboutToDisappear函数中改变状态变量,特别是@Link变量的修改可能会导致应用程序行为不稳定。
      1
      2
      3
      7、API12、api9有什么区别
      这个问题我答的不是很好,也没有找到感觉很确切的答案,,各位大哥有清楚的评论区发一下链接,感谢
      9、状态存储有哪些
      这个答案在我博客里有详细写到
      HarmonyOS 状态管理-请跳转我的博客享用
      10、持久化有哪些、如何封装首选项
      持久化可以用 PersistentStorage 结合 appstorage实现
      还可以用 首选项 Preferences 实现
      关系型数据库 RelationalStore 和 键值型数据库 KV-Store
      首选项封装-请跳转我的博客享用
      11、Web服务用过吗,如果实现H5传HM、HM传H5
      HarmonyOS webview - 请跳转我的博客享用
      12、鸿蒙项目架构、har、hsp是否接触过
      13、Navigation 跨模块跳转
      navigation 拥有路由栈 navpathstack ,配合路由表实现跨模块跳转
      直接去官网看吧,讲的比较详细
      14、FA模型、和Stage模型区别
      15、如何创建服务卡片、自己有做过吗
      HarmonyOS 卡片能力 - 请跳转我的博客享用
      16、鸿蒙项目做过哪些优化
      17、鸿蒙特性
      18、分层架构
相关文章
|
6月前
|
开发者 容器
鸿蒙HarmonyOS - SideBarContainer 组件自学指南
`SideBarContainer` 是 HarmonyOS 提供的双区域容器组件,适用于「左侧导航 + 右侧内容」布局,如后台管理界面、文件管理器等。它支持三种布局类型:Embed(并排)、Overlay(悬浮)和 Auto(自动切换),并提供折叠、拖拽、控制按钮等功能。本文通过示例代码详解其用法,包括子组件限制、显示模式控制、尺寸参数设置、控制按钮与分割线样式定制,以及常见问题解答。掌握该组件可高效构建复杂页面结构,推荐从 Embed 模式入手逐步进阶。
139 9
鸿蒙HarmonyOS - SideBarContainer 组件自学指南
|
6月前
|
传感器 人工智能 物联网
HarmonyOS NEXT~鸿蒙操作系统功耗优化特性深度解析
本文深入解析了华为鸿蒙(HarmonyOS)操作系统的功耗优化特性,涵盖低功耗设计原理、核心技术及实际应用效果。通过与Android对比,展现其在待机功耗、CPU调度效率和内存占用上的优势。文章重点阐述分布式任务调度、微内核架构及智能感知技术,并针对智能穿戴、物联网和智能手机等场景优化进行分析,同时为开发者提供优化建议。未来,鸿蒙将探索AI预测性管理等新技术,进一步提升能效表现。
1206 30
|
7月前
|
数据采集 搜索推荐 前端开发
鸿蒙HarmonyOS埋点SDK,ClkLog适配鸿蒙埋点分析
ClkLog鸿蒙埋点SDK通过手动埋点的方式实现HarmonyOS 原生应用的前端数据采集。快速接入即可获取埋点数据,同时支持分析功能(基础统计分析、自定义分析、用户画像等)。
287 59
|
2月前
|
存储 缓存 5G
鸿蒙 HarmonyOS NEXT端云一体化开发-云存储篇
本文介绍用户登录后获取昵称、头像的方法,包括通过云端API和AppStorage两种方式,并实现上传头像至云存储及更新用户信息。同时解决图片缓存问题,添加上传进度提示,支持自动登录判断,提升用户体验。
121 1
|
2月前
|
存储 负载均衡 数据库
鸿蒙 HarmonyOS NEXT端云一体化开发-云函数篇
本文介绍基于华为AGC的端云一体化开发流程,涵盖项目创建、云函数开通、应用配置及DevEco集成。重点讲解云函数的编写、部署、调用与传参,并涉及环境变量设置、负载均衡、重试机制与熔断策略等高阶特性,助力开发者高效构建稳定云端服务。
266 1
鸿蒙 HarmonyOS NEXT端云一体化开发-云函数篇
|
2月前
|
存储 JSON 数据建模
鸿蒙 HarmonyOS NEXT端云一体化开发-云数据库篇
云数据库采用存储区、对象类型、对象三级结构,支持灵活的数据建模与权限管理,可通过AGC平台或本地项目初始化,实现数据的增删改查及端侧高效调用。
109 1
|
2月前
|
存储 开发者 容器
鸿蒙 HarmonyOS NEXT星河版APP应用开发-ArkTS面向对象及组件化UI开发使用实例
本文介绍了ArkTS语言中的Class类、泛型、接口、模块化、自定义组件及状态管理等核心概念,并结合代码示例讲解了对象属性、构造方法、继承、静态成员、访问修饰符等内容,同时涵盖了路由管理、生命周期和Stage模型等应用开发关键知识点。
210 1
鸿蒙 HarmonyOS NEXT星河版APP应用开发-ArkTS面向对象及组件化UI开发使用实例
|
2月前
鸿蒙 HarmonyOS NEXT星河版APP应用开发-阶段三
本文介绍了UI开发中的样式复用与组件构建技术,涵盖@Extend、@Styles和@Builder的使用方法,并通过Swiper轮播、Scroll滚动、Tabs导航等常用组件实现典型界面效果,结合生肖抽卡、小米轮播、回顶按钮等案例,展示实际应用技巧。
95 1
|
2月前
鸿蒙 HarmonyOS NEXT星河版APP应用开发-阶段二
本文介绍鸿蒙应用界面开发中的弹性布局(Flex)、绝对定位、层叠布局及ArkTS语法进阶,涵盖字符串拼接、类型转换、数组操作、条件与循环语句,并结合B站视频卡、支付宝首页等案例,深入讲解点击事件、状态管理与界面交互功能。
170 1
鸿蒙 HarmonyOS NEXT星河版APP应用开发-阶段二
|
6月前
|
人工智能 自然语言处理 开发者
HarmonyOS NEXT~鸿蒙开发利器:CodeGenie AI辅助编程工具全面解析
鸿蒙开发迎来新利器!DevEco CodeGenie 是华为推出的 AI 辅助编程工具,专为 HarmonyOS NEXT 开发者设计。它具备智能代码生成(支持 ArkTS 和 C++)、精准知识问答以及万能卡片生成三大核心功能,大幅提升编码效率。通过与 DeepSeek 深度整合,CodeGenie 实现流畅的问答体验,帮助开发者解决技术难题。无论是新手还是资深开发者,都能从中受益,享受更智能高效的开发过程。快来体验吧!
501 5

热门文章

最新文章

下一篇
开通oss服务