【鸿蒙基础入门】概念理解和学习方法论说明

【鸿蒙基础入门】概念理解和学习方法论说明

一、鸿蒙是什么?

鸿蒙是分布式操作系统,支持万物互联的概念。分为开源鸿蒙与鸿蒙之分。

而安卓和 iOS 是为移动设备(手机or平板)设计的单设备系统,侧重单机体验;而鸿蒙是面向万物互联的分布式系统,能让手机、平板、电脑、家电、车机等多设备无缝协同、硬件共享,一套系统适配全场景,而非只服务手机平板。

刚接触鸿蒙的同学,很容易把HarmonyOS商业鸿蒙和开源鸿蒙弄混。

首先我们聊一下这两者的关系,然后再说技术上的区别。

众所周知,鸿蒙是华为开发的一款分布式智慧操作系统。因为开发系统,最重要的是集思广益,大家共同维护。为了在IOS和Android之间生存,鸿蒙的茁壮成长一定是需要开源,各方助力才能实现。

在这种思想上,华为的鸿蒙将HarmonyOS的基础功能提取出来,创建了OpenHarmony版本开源,交付给开放原子开源基金会(OpenAtom Foundation)孵化及运营的开源项目。所以OpenHarmony是HarmonyOS的能力基座,两者的系统架构基座是一致的,为下图所示:

一般而言,这两者关系是相辅相成的,但是HarmonyOS作为亲儿子,能力上还是比OpenHarmony强太多。

华为贡献了 HarmonyOS 的一部分源代码给 OpenHarmony 项目,所以在底层代码等方面有一定的共通性。

因为OpenHarmony 是开源,所以厂商可基于其进行二次开发打造自己的操作系统和品牌。HarmonyOS 是华为品牌下的操作系统,主要应用于华为及其子品牌设备,使用需获得华为授权。

而HarmonyOS特性的功能集合Kit,在OpenHarmony中是没有的。HarmonyOS 在 OpenHarmony 开源底座之上,额外包含 HMS Core、超级终端(Super Device)、方舟编译器 / 运行时增强、星盾安全、盘古大模型端侧 Kit、应用市场 / 支付 / 推送、多屏协同、流畅引擎、设备专属驱动与性能优化、地图 / 定位 / 扫码 / AI 视觉、车机 / PC / 穿戴定制服务 等闭源功能 Kit,这些在 OpenHarmony 中均不存在。【核心是华为面向 C 端消费级与商业生态的专有能力层】

二、OpenHarmony与HarmonyOS技术上的区别

经过这五年鸿蒙的系统迭代,从之前最早HarmonyOS商业鸿蒙还在用Java开发。到OpenHarmonyJS和ArkTS试水,最后两者路线统一。

我们可以观察到鸿蒙在以极快的速度成长。目前仓颉和PC鸿蒙都在快速孵化中,未来可期。但是两者之前还是有所区别,如体现以下三个方面的差别:

系统定制的差别: OpenHarmony作为开源项目,具有高度的定制性,各厂商可以根据自身需求对系统进行深度定制和裁剪,以适配不同类型的设备和应用场景。比如,智能手表厂商可以根据手表的硬件特点,对 OpenHarmony 进行定制,去除不必要的功能,优化资源占用,使系统更适合手表的运行。

而HarmonyOS是华为的商用系统,定制性相对较弱,主要围绕华为的 "1+8+N" 全场景战略进行优化和适配,以确保华为设备之间的协同体验达到最佳效果。 应用兼容性

生态包容性的差别: OpenHarmony致力于为各种硬件设备提供通用的操作系统平台,支持从物联网设备到智能终端等多种类型的硬件。不同厂商可以根据自身硬件特点,在 OpenHarmony 基础上进行适配和优化,因此在硬件适配的广度上具有优势。

而HarmonyOS主要针对华为及部分合作厂商的硬件设备进行深度优化和适配,在华为设备上能够充分发挥硬件的性能优势,实现硬件与软件的高度协同。例如,HarmonyOS 与华为手机的芯片、摄像头等硬件深度结合,实现了拍照效果的优化、系统性能的提升等。

应用生态兼容的差别: OpenHarmony由于其开源性质,应用生态相对较为分散,目前应用数量和种类相对有限,对安卓应用的兼容性也因不同厂商的定制而有所差异。

而HarmonyOS早期版本通过兼容安卓应用,快速丰富了自身的应用生态,用户可以在 HarmonyOS 设备上使用大量的安卓应用。但 HarmonyOS NEXT 不再兼容安卓应用,而是专注于发展自己的原生应用生态。纯血鸿蒙在2025年会正式全面上架。

三、鸿蒙 HarmonyOS 版本年代记

版本 发布/关键节点 官方核心信息 备注
鸿蒙 1.0 2019-08-09 华为开发者大会发布,首发荣耀智慧屏,奠定分布式能力底座。 系统起点,为全场景生态铺路。
鸿蒙 2.0 2020-09-10 拓展至手机、车机、电视,确立全场景设备互联理念。 跨设备协同框架初建。
鸿蒙 3.0 2022-07-27 超级终端深度升级,优化流畅性、安全性与万能卡片体验。 全场景体验核心迭代。不再支持java版本。eTS也就是后来的ArkTS。
鸿蒙 4.0 2023-08-04 强化多屏协同与 AI 交互,支持更多智能设备接入。 生态设备快速扩容。
鸿蒙 4.4 2024年 针对耳机、穿戴等细分设备优化协同能力。 完善 IoT 终端覆盖。
鸿蒙 5.0 (NEXT) 2024-10-22 全栈自研、彻底脱离安卓兼容层,纯血鸿蒙里程碑。 2025年完成老机型适配,奠定纯血基础。
鸿蒙 6.0 2025-10-22 正式发布,首批适配 90+ 机型;性能平均提升 15%。 2026-04-07 完成 43 款设备全量推送 6.0.0.328 稳定版。
鸿蒙 6.1 2026-04-20(即将) 首款鸿蒙 PC(MateBook 14 鸿蒙版)预装 6.1.0.117。 标志鸿蒙正式进入 PC 领域。
鸿蒙 7.0 2026-06(HDC) 官方官宣 3 月 25 日定档,东莞 HDC 开发者大会发布。 下一代Mate 90 系列 10-11 月首发预装。

四、鸿蒙相关概念专有名词的解释:

鸿蒙 特指HarmonyOS与OpenHarmony,前者是商业鸿蒙,是华为公司使用和维护的系统。后者是HW开源给开放原子基金协会的系统,任何人遵守开源协议,都可以使用和改造的系统。

HarmonyOS虽然基座是OpenHarmony,但是上层功能和使用差异也还是有的。两者虽然近似,但是并非一个东西。

鸿蒙相关公司 目前使用和维护开源鸿蒙OpenHarmony成长的公司有很多,例如深开鸿,润开鸿,鸿湖万联,开鸿智谷,九联开鸿等。开源鸿蒙的现在使用方向很多,例如电网,工业,物联,矿产等等。 商业鸿蒙,是华为公司自己进行迭代和维护与使用。

鸿蒙北向和南向 特指,北向应用开发 ,南向设备开发。设备开发多是基于开源鸿蒙。北向分OpenHarmony应用开发和HarmonyOS应用开发。

鸿蒙双框架和单框架 在 HarmonyOS NEXT 发布之前,华为手机运行的是 "双框架" 系统。其架构逻辑是鸿蒙和安卓框架共同存在,但底层基础服务仍以鸿蒙为核心,也被称为 "杂交系统"。单框架:以 HarmonyOS NEXT 为代表,是纯血鸿蒙系统,底座全线自研,去掉了传统的安卓开放源代码项目(AOSP)代码,只支持鸿蒙内核及鸿蒙系统的应用

鸿蒙HDE 华为开发者专家(HUAWEI DEVELOPER EXPERTS),经过华为官方认证。他们是华为开放能力的实践领袖,肩负着技术布道、知识赋能等责任,会在各大技术社区解答用户有关华为开发能力的相关问题,定期在社交媒体上进行线上分享,也常在线下以讲师身份分享关于华为最新技术趋势讲解。

鸿蒙HDD UAWEI Developer Day华为开发者日,定期在国内多个城市举办开发者深度交流的活动。

仓颉 仓颉是华为鸿蒙系统中的编程语言,目前也可用于鸿蒙开发,还在起步中。

鸿蒙开发概念 主流使用ArkTS声明式开发语言,ArkUI响应式开发框架。

以下是鸿蒙应用开发的类的概念说明:

typescript 复制代码
import { promptAction } from '@kit.ArkUI' // 导入系统API
import { IconView } from './IconView' // 导入自定义组件

@Entry // 装饰器,代表入口和界面的意思。
@Component // 装饰器,代表组件
struct Index {
  
  // 重写build接口进行界面或者组件布局的编写,与传统命令式编程不同,这里和Flutter类似,鱼鳞排版的布局搭建
  build() {
    // 堆叠容器控件
    Stack({
      alignContent: Alignment.BottomEnd // 小括号内为Stack的属性设置
    }) { // 花括号内是包裹的子容器
      Text("边距点击问题测试demo")
        .fontSize(50)
        .fontWeight(FontWeight.Bold)

      IconView().zIndex(1)

      Row() {
      }
      .height('100%')
      .width('100%')
      .backgroundColor(Color.Blue)
      // 点击事件
      .onClick(() => {
        // 点击事件回调
        
        // 气泡
        promptAction.showToast({
          message: "点击!"
        })
      })
    }
    // 控件的属性,多是通过点的形式进行设置
    .height('100%')
    .width('100%')
  }
}

ArkUI-X ArkUI - X 是华为推出的跨平台 UI 框架,旨在将 ArkUI 开发框架扩展到多个操作系统平台。目前还在起步中。

五、鸿蒙自学步骤:

不管是前端,移动端转鸿蒙。还是初学者学习鸿蒙。都可参考根据以下学习路线进行鸿蒙的学习。

首先需要确定你的开发方向,是OpenHarmoy or HarmonyOS。是应用开发,还是设备开发,亦或者是系统开发?

HarmonyOS (1)知其然才能知其所以然,先进行鸿蒙整体概念的入门和学习 鸿蒙官方开发者学堂,针对鸿蒙相关知识点,进行视频类的讲解,对应还有习题与相关认证。 developer.huawei.com/consumer/cn... 像鸿蒙初级和高级认证,应聘鸿蒙开发多会要求。

(2)通读鸿蒙学习文档 官方文档 有详细的功能调用接口说明: developer.huawei.com/consumer/cn...

六、根据自身定位进行定向学习

目前学习鸿蒙的开发者们,多是从前端,移动端开发转向鸿蒙。当然也有初学者。

(1)针对前端方向 首先鸿蒙的声明式开发与响应式布局,和前端Vue,React等开发语言和框架类似。所以开发思路上的门槛并不大,除了鸿蒙知识的学习,更需要补充移动端开发的思想。

这是前端开发者的弱势。因为目前市面上的鸿蒙开发工作,多是从既有的移动端进行鸿蒙化迁移,需要能看懂Android或者IOS端的代码。并且移动端开发比前端开发,对性能,内存使用,代码效率的要求可能会更高一些,这也需要一定的学习成本。

Android代码语法的学习可从Android官网或者菜鸟笔记,哔哩哔哩等网站上免费进行学习。

(2) 针对移动端开发方向 如果是Android Compose ,IOS swiftUI转到鸿蒙,都是声明式开发,学习鸿蒙的门槛会很小。只是对鸿蒙平台的系统API和思想进行学习。

若不是这两种,还是传统命令式编程方向转过来,那需要先对声明式开发与响应式布局的概念进行学习。转变开发思路。

深入了解鸿蒙系统的独特架构与设计理念,对比与移动端系统的差异。这样才能如指臂使。熟悉 HarmonyOS 的开发语言如 Java、Kotlin 或 JavaScript 等,掌握 ArkUI 等开发框架的使用。参考官方丰富的文档、教程和示例代码,动手实践经典案例与小型项目。逐步积累鸿蒙开发经验,实现技术转型。

(3)针对初学者方向 初学者应先了解鸿蒙系统的架构与特性,学习相关编程语言,通过官方文档、教程及实践项目掌握 ArkUI 等开发框架,多参与社区交流以不断提升开发能力。 重点是编程语言语法的基础,开发概念的熟悉,多参与应用开发积累项目经验。

相关推荐
Georgewu1 小时前
【鸿蒙基础入门】HarmonyOS开发环境IDE和AI编程助手安装配置和默认项目讲解
harmonyos
木斯佳2 小时前
HarmonyOS 6实战:从视频编解码到渲染过程,一文了解鸿蒙音视频数据流向
harmonyos
云_杰3 小时前
手把手教你玩转HDS沉浸光感效果
华为·harmonyos·ui kit
HwJack204 小时前
HarmonyOS 开发终结“盲盒式”调试:用 hiAppEvent 的 Watcher 接口拿捏应用行为监控
华为·harmonyos
互联网散修4 小时前
鸿蒙实战:用 want.param 实现视频播放器跨端迁移续播
华为·音视频·harmonyos·跨端迁移续播
特立独行的猫a4 小时前
HarmonyOS / OpenHarmony 平台三方库移植:使用 vcpkg 移植 libzen(ZenLib)和 libmediainfo 实践指南
harmonyos·移植·三方库·libmediainfo·libzen·openharmnoy
枫叶丹44 小时前
【HarmonyOS 6.0】ArkWeb 私有网络访问控制接口详解
开发语言·网络·华为·harmonyos
HwJack205 小时前
告别冷启动“白屏焦虑”:HarmonyOS应用 aboutToAppear 高性能优化全攻略
华为·性能优化·harmonyos